[−][src]Module rain_lang::parser
A simple parser, AST and prettyprinter for a textual representation of rain
programs
Modules
ast | An abstract syntax tree for |
builder | AST-to- |
symbol_table | A simple symbol table struct, used to build a rain AST into a rain IR graph |
Functions
defeq | Parse an equality separator, optionally preceded by whitespace |
parse_atom | Parse an atomic |
parse_binary_logical_op | Parse a binary logical operation |
parse_bool | Parse a boolean |
parse_bool_type | Parse the Boolean type |
parse_comment | Parse a |
parse_expr | Parse a |
parse_gamma | Parse a gamma node, consuming all whitespace before it |
parse_ident | Parse a |
parse_lambda | Parse a lambda function, consuming all whitespace before it |
parse_logical_op | Parse a logical operation |
parse_multi_comment | Parse a multi line |
parse_natural | Parse a natural number |
parse_opt_ident | Parse an optional ident |
parse_parametrized | Parse a parametrized expression |
parse_path | Parse a |
parse_pattern | Parse a pattern for assignment Accepts whitespace before the pattern |
parse_pattern_match | Parse a pattern match |
parse_pattern_matches | Parse a set of pattern matches |
parse_phi | Parse a phi node, consuming all whitespace beforeit |
parse_pi | Parse a pi type, consuming all whitespace before it |
parse_scope | Parse a scope, consuming all whitespace before it |
parse_simple_assignment | Parse a simple assignment. Accepts whitespace before it |
parse_single_comment | Parse a single line |
parse_statement | Parse a |
parse_type_arrow | Parse a function type arrow |
parse_type_bound | Parse a type bound |
parse_typed_args | Parse a list of typed arguments |
parse_typed_idents | Parse a list of typed identifiers |
parse_unary_logical_op | Parse a unary logical operation |
path_separator | Parse a path separator |
terminator | Parse a terminator, optionally preceded by whitespace |
whitespace | Parse whitespace, including ignored comments. Returns the count of comments. |