Skip to main content

sem_core/parser/plugins/
mod.rs

1pub mod code;
2pub mod csv_plugin;
3pub mod erb;
4pub mod fallback;
5pub mod json;
6pub mod markdown;
7pub mod svelte;
8pub mod toml_plugin;
9pub mod vue;
10pub mod yaml;
11
12use crate::parser::registry::ParserRegistry;
13
14pub fn create_default_registry() -> ParserRegistry {
15    let mut registry = ParserRegistry::new();
16
17    registry.register(Box::new(json::JsonParserPlugin));
18    registry.register(Box::new(code::CodeParserPlugin));
19    registry.register(Box::new(svelte::SvelteParserPlugin));
20    registry.register(Box::new(vue::VueParserPlugin));
21    registry.register(Box::new(yaml::YamlParserPlugin));
22    registry.register(Box::new(toml_plugin::TomlParserPlugin));
23    registry.register(Box::new(csv_plugin::CsvParserPlugin));
24    registry.register(Box::new(markdown::MarkdownParserPlugin));
25    registry.register(Box::new(erb::ErbParserPlugin));
26    // Fallback must be last
27    registry.register(Box::new(fallback::FallbackParserPlugin));
28
29    registry
30}