Module grammar

Source
Expand description

Backend of the parser, automatically generated by the LALRPOP crate from grammar files.

§Examples

Basic parsing to get an AST:

use zypo_lib::parser;
 
fn main() {
    let input = "fun hi() {}";
    let expected_ast = vec![
        parser::ast::Function {
            ident: "hi".to_string(),
            body: vec![],
            params: vec![],
            docs: None,
            return_type: parser::ast::VarType::Void
        }
    ];
 
    let parsed_input = parser::grammar::GrammarParser::new()
        .parse(input)
        .unwrap();
 
    assert_eq!(parsed_input, expected_ast);
}

Structs§

GrammarParser
Token

Traits§

___ToTriple