Skip to main content

LanguageExtractor

Trait LanguageExtractor 

Source
pub trait LanguageExtractor {
    // Required methods
    fn file_extensions(&self) -> Vec<&'static str>;
    fn extract(&self, source: &[u8], path: &Path) -> Result<ExtractionFragment>;
    fn resolve_imports(&self, imports: &[ImportNode]) -> Vec<Edge>;
    fn collect_type_refs(&self, fragment: &mut ExtractionFragment);
}

Required Methods§

Source

fn file_extensions(&self) -> Vec<&'static str>

Source

fn extract(&self, source: &[u8], path: &Path) -> Result<ExtractionFragment>

Source

fn resolve_imports(&self, imports: &[ImportNode]) -> Vec<Edge>

Source

fn collect_type_refs(&self, fragment: &mut ExtractionFragment)

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl LanguageExtractor for AstroExtractor

Source§

impl LanguageExtractor for CsprojExtractor

Source§

impl LanguageExtractor for FortranExtractor

Source§

impl LanguageExtractor for GoExtractor

Source§

impl LanguageExtractor for JavaScriptExtractor

Source§

impl LanguageExtractor for JsonPackageExtractor

MCP config extractor (JSON-based)

Source§

impl LanguageExtractor for MarkdownExtractor

Source§

impl LanguageExtractor for McpConfigExtractor

Source§

impl LanguageExtractor for ObjCExtractor

Source§

impl LanguageExtractor for PowerShellExtractor

Source§

impl LanguageExtractor for PythonExtractor

Source§

impl LanguageExtractor for RazorExtractor

Source§

impl LanguageExtractor for RustExtractor

Source§

impl LanguageExtractor for SlnExtractor

Source§

impl LanguageExtractor for TsBashExtractor

Vue SFC extractor (script extraction + template analysis)

Source§

impl LanguageExtractor for TsCExtractor

Source§

impl LanguageExtractor for TsCSharpExtractor

Source§

impl LanguageExtractor for TsCmakeExtractor

Source§

impl LanguageExtractor for TsCppExtractor

Source§

impl LanguageExtractor for TsDartExtractor

Source§

impl LanguageExtractor for TsElixirExtractor

Source§

impl LanguageExtractor for TsGoExtractor

Tree-sitter based Go extractor

Source§

impl LanguageExtractor for TsGroovyExtractor

Source§

impl LanguageExtractor for TsHaskellExtractor

Source§

impl LanguageExtractor for TsJavaExtractor

Source§

impl LanguageExtractor for TsJavaScriptExtractor

Source§

impl LanguageExtractor for TsJuliaExtractor

Source§

impl LanguageExtractor for TsKotlinExtractor

Source§

impl LanguageExtractor for TsLuaExtractor

Source§

impl LanguageExtractor for TsPascalExtractor

Source§

impl LanguageExtractor for TsPhpExtractor

Source§

impl LanguageExtractor for TsPythonExtractor

Tree-sitter based JavaScript/TypeScript extractor

Source§

impl LanguageExtractor for TsRacketExtractor

Source§

impl LanguageExtractor for TsRubyExtractor

Source§

impl LanguageExtractor for TsRustExtractor

Tree-sitter based Rust extractor

Source§

impl LanguageExtractor for TsScalaExtractor

Source§

impl LanguageExtractor for TsSqlExtractor

Tree-sitter based Bash extractor

Source§

impl LanguageExtractor for TsSvelteExtractor

Package.json extractor (JSON-based)

Source§

impl LanguageExtractor for TsSwiftExtractor

Source§

impl LanguageExtractor for TsTypeScriptExtractor

Tree-sitter based Go extractor

Source§

impl LanguageExtractor for TsVueExtractor

Svelte SFC extractor

Source§

impl LanguageExtractor for TsZigExtractor

Source§

impl LanguageExtractor for TypeScriptExtractor

Source§

impl LanguageExtractor for VerilogExtractor