Parser

Undocumented in source.
struct Parser {}

Members

Enums

ConsumeTerminator
enum ConsumeTerminator
Undocumented in source.
NeedRegNames
enum NeedRegNames
Undocumented in source.

Functions

block_stmt
AstIndex block_stmt()
Undocumented in source. Be warned that the author may not have intended to support it.
canBeType
bool canBeType(AstIndex someExpr)
Undocumented in source. Be warned that the author may not have intended to support it.
createAttributeInfo
ushort createAttributeInfo()
Undocumented in source. Be warned that the author may not have intended to support it.
expect
void expect(TokenType type, string after)
Undocumented in source. Be warned that the author may not have intended to support it.
expectAndConsume
void expectAndConsume(TokenType type, string after)
Undocumented in source. Be warned that the author may not have intended to support it.
expectIdentifier
Identifier expectIdentifier(string after)
Undocumented in source. Be warned that the author may not have intended to support it.
expr
AstIndex expr(PreferType preferType, int rbp)
Undocumented in source. Be warned that the author may not have intended to support it.
hasMoreTokens
bool hasMoreTokens()
Undocumented in source. Be warned that the author may not have intended to support it.
indent
auto indent(uint var)
Undocumented in source. Be warned that the author may not have intended to support it.
loc
SourceLocation loc()
Undocumented in source. Be warned that the author may not have intended to support it.
make
AstIndex make(TokenIndex start, Args args)
Undocumented in source. Be warned that the author may not have intended to support it.
makeDecl
AstIndex makeDecl(TokenIndex start, Args args)
Undocumented in source. Be warned that the author may not have intended to support it.
makeExpr
AstIndex makeExpr(TokenIndex start, Args args)
Undocumented in source. Be warned that the author may not have intended to support it.
makeIdentifier
Identifier makeIdentifier(TokenIndex index)
Undocumented in source. Be warned that the author may not have intended to support it.
nextToken
void nextToken()
Undocumented in source. Be warned that the author may not have intended to support it.
paren_expr
AstIndex paren_expr()
Undocumented in source. Be warned that the author may not have intended to support it.
parseItems
void parseItems(AstNodes items, ScopeKind scopeKind)
Undocumented in source. Be warned that the author may not have intended to support it.
parseModule
void parseModule(ModuleDeclNode* mod, TokenIndex firstTokenIndex)
Undocumented in source. Be warned that the author may not have intended to support it.
parseParameters
void parseParameters(AstIndex signature, NeedRegNames nameReg)
Undocumented in source. Be warned that the author may not have intended to support it.
parseStaticIfThenElse
void parseStaticIfThenElse(AstNodes thenStatements, AstNodes elseStatements)
Undocumented in source. Be warned that the author may not have intended to support it.
parse_alias
AstIndex parse_alias()

<alias_decl> ::= "alias" <id> "=" <expr> ";"

parse_argument_list
ushort parse_argument_list(AstNodes expressions)
Undocumented in source. Be warned that the author may not have intended to support it.
parse_attribute
void parse_attribute(AstNodes declarations)
Undocumented in source. Be warned that the author may not have intended to support it.
parse_auto_decl
void parse_auto_decl(AstNodes items)
Undocumented in source. Be warned that the author may not have intended to support it.
parse_block
void parse_block(AstNodes statements)
Undocumented in source. Be warned that the author may not have intended to support it.
parse_declaration
void parse_declaration(AstNodes items)
Undocumented in source. Be warned that the author may not have intended to support it.
parse_declarations
void parse_declarations(AstNodes declarations, TokenType until)
Undocumented in source. Be warned that the author may not have intended to support it.
parse_enum
AstIndex parse_enum()
Undocumented in source. Be warned that the author may not have intended to support it.
parse_enum_body
AstNodes parse_enum_body(AstIndex type)
Undocumented in source. Be warned that the author may not have intended to support it.
parse_expr_or_id_decl
AstIndex parse_expr_or_id_decl(ConsumeTerminator consume_terminator, TokenType var_terminator)

Parses expression preferring types, if identifier follows, parses as var/func declaration

parse_extern_attribute
void parse_extern_attribute(TokenIndex start)
Undocumented in source. Be warned that the author may not have intended to support it.
parse_for
AstIndex parse_for()
Undocumented in source. Be warned that the author may not have intended to support it.
parse_func
AstIndex parse_func(TokenIndex start, AstIndex typeIndex, Identifier declarationId)
Undocumented in source. Be warned that the author may not have intended to support it.
parse_hash_assert
AstIndex parse_hash_assert()
Undocumented in source. Be warned that the author may not have intended to support it.
parse_hash_foreach
AstIndex parse_hash_foreach()
Undocumented in source. Be warned that the author may not have intended to support it.
parse_hash_if
AstIndex parse_hash_if()
Undocumented in source. Be warned that the author may not have intended to support it.
parse_import
AstIndex parse_import()
Undocumented in source. Be warned that the author may not have intended to support it.
parse_module_decl
void parse_module_decl()
Undocumented in source. Be warned that the author may not have intended to support it.
parse_single_attribute
void parse_single_attribute(TokenIndex start)
Undocumented in source. Be warned that the author may not have intended to support it.
parse_struct
AstIndex parse_struct()
Undocumented in source. Be warned that the author may not have intended to support it.
parse_switch
AstIndex parse_switch()
Undocumented in source. Be warned that the author may not have intended to support it.
parse_template_parameters
void parse_template_parameters(AstNodes params, ushort numParamsBeforeVariadic)
Undocumented in source. Be warned that the author may not have intended to support it.
parse_var_func_declaration_after_type
AstIndex parse_var_func_declaration_after_type(TokenIndex start, AstIndex body_start, AstIndex typeIndex, ConsumeTerminator consume_terminator, TokenType var_terminator)
Undocumented in source. Be warned that the author may not have intended to support it.
popScope
void popScope(ScopeTempData temp)
Undocumented in source. Be warned that the author may not have intended to support it.
pushScope
ScopeTempData pushScope(string name, ScopeKind kind)
Undocumented in source. Be warned that the author may not have intended to support it.
scop
PrintScope scop(string name, Args args)
Undocumented in source. Be warned that the author may not have intended to support it.
skipPast
void skipPast(TokenType tokType)
Undocumented in source. Be warned that the author may not have intended to support it.
statement
void statement(AstNodes items)
Undocumented in source. Be warned that the author may not have intended to support it.
statement_as_array
void statement_as_array(AstNodes statements)
Undocumented in source. Be warned that the author may not have intended to support it.

Structs

PrintScope
struct PrintScope
Undocumented in source.

Variables

attribState
AttribState attribState;
Undocumented in source.
attributeStack
AstNodes attributeStack;
Undocumented in source.
context
CompilationContext* context;
Undocumented in source.
currentModule
ModuleDeclNode* currentModule;
Undocumented in source.
currentScopeIndex
ScopeIndex currentScopeIndex;
Undocumented in source.
declarationOwner
AstIndex declarationOwner;

For member functions module, struct or function

nesting
int nesting;
Undocumented in source.
tok
Token tok;
Undocumented in source.

Meta