Skip to main content

oparry_parser/
generic.rs

1//! Generic parser for unknown languages (stores raw source)
2
3use oparry_core::Result;
4
5/// Generic parser that just stores the source as-is
6pub struct GenericParser;
7
8impl super::Parser for GenericParser {
9    fn parse(&self, source: &str) -> Result<super::ParsedCode> {
10        Ok(super::ParsedCode::Generic(source.to_string()))
11    }
12}
13
14#[cfg(test)]
15mod tests {
16    use super::*;
17    use crate::Parser;
18
19    #[test]
20    fn test_generic_parser() {
21        let parser = GenericParser;
22        let source = "any random text";
23        let result = parser.parse(source).unwrap();
24        assert_eq!(result.source(), source);
25    }
26}