var searchIndex = {}; searchIndex["gluon_parser"] = {"doc":"The parser is a bit more complex than it needs to be as it needs to be fully specialized to\navoid a recompilation every time a later part of the compiler is changed. Due to this the\nstring interner and therefore also garbage collector needs to compiled before the parser.","items":[[5,"parse_tc","gluon_parser","Parses a string to an AST which contains has identifiers which also contains a field for storing\ntype information. The type will just be a dummy value until the AST has passed typechecking",null,{"inputs":[{"name":"symbolmodule"},{"name":"str"}],"output":{"name":"result"}}],[5,"parse_expr","","Parses a gluon expression",null,{"inputs":[{"name":"identenv"},{"name":"str"}],"output":{"name":"result"}}],[0,"lexer","","",null,null],[3,"PToken","gluon_parser::lexer","",null,null],[12,"location","","",0,null],[12,"token","","",0,null],[3,"Offside","","",null,null],[12,"context","","",1,null],[12,"location","","",1,null],[3,"Contexts","","",null,null],[3,"Lexer","","",null,null],[12,"env","","",2,null],[12,"make_ident","","",2,null],[12,"input","","",2,null],[12,"unprocessed_tokens","","",2,null],[12,"indent_levels","","",2,null],[4,"Delimiter","","",null,null],[13,"Brace","","",3,null],[13,"Bracket","","",3,null],[13,"Paren","","",3,null],[4,"Token","","",null,null],[13,"Identifier","","",4,null],[13,"Operator","","",4,null],[13,"String","","",4,null],[13,"Char","","",4,null],[13,"Integer","","",4,null],[13,"Byte","","",4,null],[13,"Float","","",4,null],[13,"DocComment","","",4,null],[13,"Let","","",4,null],[13,"And","","",4,null],[13,"In","","",4,null],[13,"Type","","",4,null],[13,"Match","","",4,null],[13,"With","","",4,null],[13,"If","","",4,null],[13,"Then","","",4,null],[13,"Else","","",4,null],[13,"Open","","",4,null],[13,"Close","","",4,null],[13,"Lambda","","",4,null],[13,"RightArrow","","",4,null],[13,"Colon","","",4,null],[13,"Dot","","",4,null],[13,"Comma","","",4,null],[13,"Pipe","","",4,null],[13,"Equal","","",4,null],[13,"OpenBlock","","",4,null],[13,"CloseBlock","","",4,null],[13,"Semi","","",4,null],[13,"EOF","","",4,null],[4,"Context","","",null,null],[13,"Block","","Contaxt which contains several expressions/declarations separated by semicolons",5,null],[12,"emit_semi","gluon_parser::lexer::Context","",5,null],[12,"needs_close","","",5,null],[13,"Expr","gluon_parser::lexer","A simple expression",5,null],[13,"Let","","",5,null],[13,"Type","","",5,null],[13,"If","","",5,null],[13,"Then","","",5,null],[13,"Delimiter","","",5,null],[13,"MatchClause","","",5,null],[13,"Lambda","","",5,null],[6,"Error","","",null,null],[11,"fmt","","",3,null],[11,"eq","","",3,null],[11,"clone","","",3,null],[11,"fmt","","",3,null],[11,"fmt","","",4,null],[11,"eq","","",4,null],[11,"ne","","",4,null],[11,"clone","","",4,null],[11,"fmt","","",4,null],[11,"map","","",4,null],[11,"fmt","","",0,null],[11,"clone","","",0,null],[11,"fmt","","",1,null],[11,"clone","","",1,null],[11,"eq","","",5,null],[11,"ne","","",5,null],[11,"fmt","","",5,null],[11,"clone","","",5,null],[11,"last","","",6,null],[11,"last_mut","","",6,null],[11,"pop","","",6,null],[11,"push","","",6,null],[11,"replace","","",6,null],[11,"new","","",2,{"inputs":[{"name":"i"},{"name":"rc"}],"output":{"name":"lexer"}}],[11,"next_token","","",2,null],[11,"uncons","","",2,null],[11,"position","","",2,null],[6,"Error","gluon_parser","",null,null]],"paths":[[3,"PToken"],[3,"Offside"],[3,"Lexer"],[4,"Delimiter"],[4,"Token"],[4,"Context"],[3,"Contexts"]]}; initSearch(searchIndex);