Skip to main content

sem_core/parser/plugins/
mod.rs

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