Skip to main content

Crate fallow_extract

Crate fallow_extract 

Source
Expand description

Parsing and extraction engine for fallow codebase intelligence.

This crate handles all file parsing: JS/TS via Oxc, Vue/Svelte SFC extraction, Astro frontmatter, MDX import/export extraction, CSS Module class name extraction, HTML asset reference extraction, and incremental caching of parse results.

Re-exports§

pub use astro::extract_astro_frontmatter;
pub use astro::extract_astro_style_regions;
pub use astro::extract_astro_template_regions;
pub use css::ThemeScan;
pub use css::ThemeTokenDef;
pub use css::extract_apply_tokens;
pub use css::extract_apply_tokens_located;
pub use css::extract_css_module_exports;
pub use css::extract_css_var_reads_located;
pub use css::scan_theme_blocks;
pub use css_classes::MarkupClassScan;
pub use css_classes::MarkupClassToken;
pub use css_classes::is_edit_distance_one;
pub use css_classes::is_typo_edit;
pub use css_classes::scan_markup_class_tokens;
pub use css_in_js::CssInJsObjectSheets;
pub use css_in_js::CssInJsToken;
pub use css_in_js::CssInJsTokenDef;
pub use css_in_js::CssInJsTokenOrigin;
pub use css_in_js::TokenConsumerHit;
pub use css_in_js::css_in_js_object_sheets;
pub use css_in_js::css_in_js_theme_consumers;
pub use css_in_js::css_in_js_theme_token_defs;
pub use css_in_js::css_in_js_token_consumers;
pub use css_in_js::css_in_js_token_defs;
pub use css_in_js::css_in_js_virtual_stylesheet;
pub use css_in_js::panda_style_value_consumers;
pub use css_in_js::panda_token_call_consumers;
pub use css_metrics::compute_css_analytics;
pub use css_metrics::parse_css_color_rgb;
pub use glimmer::is_glimmer_file;
pub use glimmer::strip_glimmer_templates;
pub use mdx::extract_mdx_statements;
pub use sfc::SourceRegion;
pub use sfc::extract_sfc_scripts;
pub use sfc::extract_sfc_styles;
pub use sfc::extract_sfc_template_regions;
pub use sfc::is_sfc_file;
pub use sfc_css::scoped_unused_classes;
pub use sfc_css::sfc_preprocessor_virtual_stylesheet;
pub use sfc_css::sfc_virtual_stylesheet;
pub use tailwind::TailwindArbitraryUse;
pub use tailwind::scan_tailwind_arbitrary_values;

Modules§

astro
Astro component frontmatter extraction.
cache
Incremental parse cache with bitcode serialization.
css
CSS/SCSS file parsing and CSS Module class name extraction.
css_classes
Markup CSS-class reference scanning and class-name similarity.
css_in_js
CSS-in-JS analytics front-ends (CSS program Phases 3b / 3c / 3d).
css_metrics
Structural CSS analytics computed from the parsed CSS syntax tree.
flags
Feature flag detection via lightweight Oxc AST visitor.
glimmer
Helpers for Glimmer component files (.gts / .gjs).
graphql
GraphQL document parsing.
html
HTML file parsing for script, stylesheet, and Angular template references.
iconify
Static Iconify icon-string extraction (issue #608).
inventory
Function inventory walker for fallow coverage upload-inventory.
mdx
MDX import/export statement extraction.
sfc
Vue/Svelte Single File Component (SFC) script and style extraction.
sfc_css
Dead scoped-CSS class detection for Vue/Svelte single-file components.
suppress
Inline suppression comment parsing.
tailwind
Tailwind CSS arbitrary-value detection. Tailwind CSS arbitrary-value detection.
visitor
Visitor utilities for AST extraction.

Structs§

AngularTemplateMemberAccessFact
A member name referenced from an Angular template surface.
AngularThisSpreadFact
Opaque Angular { ...this } forwarding marker.
ClassHeritageInfo
Additional heritage metadata for an exported class.
DynamicCustomElementRenderFact
Opaque marker for a dynamic custom-element render site.
DynamicImportInfo
A dynamic import() call.
DynamicImportPattern
A dynamic import with a partially resolved pattern.
ExportInfo
An export declaration.
FactoryCallMemberAccessFact
A member access on a static factory call result.
FactoryFnMemberAccessFact
A member access on a value returned by an imported free-function factory.
FactoryReturnExport
An exported free-function factory proven to return one class instance.
FluentChainMemberAccessFact
A member access on a fluent chain rooted at a static factory call.
FluentChainNewMemberAccessFact
A member access on a fluent chain rooted at a new expression.
ImportInfo
An import declaration.
InstanceExportBindingFact
An exported value whose runtime instance targets a local class or interface.
LocalTypeDeclaration
A module-scope declaration that can be used as a TypeScript type.
MemberAccess
A static member access expression (e.g., Status.Active, MyClass.create()).
MemberInfo
A member of an enum, class, or namespace.
ModuleInfo
Extracted module information from a single file.
ParseResult
Result of parsing all files, including incremental cache statistics.
PlaywrightFixtureAliasFact
A Playwright fixture wrapper alias declared by mergeTests or .extend.
PlaywrightFixtureDefinitionFact
A Playwright fixture definition declared by a typed test.extend<T>().
PlaywrightFixtureTypeFact
A nested Playwright fixture binding declared by a fixture type alias.
PlaywrightFixtureUseFact
A member access on a Playwright fixture object inside a test callback.
PublicSignatureTypeReference
A reference from an exported symbol’s public signature to a type name.
ReExportInfo
A re-export declaration.
RequireCallInfo
A require() call.

Enums§

ExportName
Export identifier.
ImportedName
How a symbol is imported.
MemberKind
The kind of member.
SemanticFact
A typed extraction fact for cross-layer analysis.
VisibilityTag
Visibility tag from JSDoc/TSDoc comments that suppresses unused-export detection.

Functions§

compute_line_offsets
Compute a table of line-start byte offsets from source text.
parse_all_files
Parse all files in parallel, extracting imports and exports. Uses the cache to skip reparsing files whose content hasn’t changed.
parse_from_content
Parse from in-memory content (for LSP, includes complexity).
parse_single_file
Parse a single file and extract module information (without complexity).
parse_source_to_module
Parse source text into a ModuleInfo.