Skip to main content

Crate batless

Crate batless 

Source
Expand description

Core functionality for batless - a minimal, AI-friendly code viewer

This library provides the core logic for syntax highlighting and file processing that can be used both by the CLI and in tests.

Re-exports§

pub use tokens::TokenExtractor;
pub use config::BatlessConfig;
pub use error::BatlessError;
pub use error::BatlessResult;
pub use file_info::FileInfo;
pub use formatter::OutputFormatter;
pub use formatter::OutputMode;
pub use json_schema::get_json_schema;
pub use json_schema::validate_batless_output;
pub use json_schema::JsonSchemaValidator;
pub use language::LanguageDetector;
pub use processor::FileProcessor;
pub use profile::CustomProfile;
pub use streaming::StreamingCheckpoint;
pub use streaming::StreamingChunk;
pub use streaming::StreamingProcessor;
pub use summary::SummaryLevel;
pub use tokens::AiModel;
pub use tokens::TokenCount;
pub use tokens::TokenCounter;

Modules§

ast_summarizer
AST-based code summarization using tree-sitter
chunker
Semantic boundary finding for streaming chunk splitting
config
Configuration management for batless
config_manager
Manages application configuration by merging settings from files, command-line arguments, and profiles.
config_validation
Configuration validation for batless
error
Custom error types for batless
file_info
File information structure for batless
formatter
Output formatting functionality for batless
formatters
Modular formatting functionality
json_schema
JSON schema validation for batless output
language
Language detection for batless
processor
File processing functionality for batless
profile
Custom profile configuration for batless
streaming
Streaming JSON output functionality for batless
summarizer
Code summarization functionality for batless
summary
Summary level configuration for code analysis
summary_item
Structured summary item with line number metadata
tokens
Token processing functionality for batless
traits
Trait definitions for decoupling modules

Functions§

detect_language
Detect the programming language from a file path
format_output
Format output according to the specified mode
list_languages
Get list of all available programming languages
process_file
Main entry point for processing a file with batless