vox.fe.passes.parser

Members

Aliases

LeftParser
alias LeftParser = AstIndex function(ref Parser p, PreferType preferType, Token token, int rbp, AstIndex left, ref int nbp)
Undocumented in source.
NullParser
alias NullParser = AstIndex function(ref Parser p, PreferType preferType, Token token, int rbp)
Undocumented in source.

Enums

PreferType
enum PreferType

Controls the expression parser Forces * expression to be parsed as pointer type Disables slice parsing for [] expression

Functions

leftAssignOp
AstIndex leftAssignOp(Parser p, PreferType preferType, Token token, int rbp, AstIndex left, int nbp)
Undocumented in source. Be warned that the author may not have intended to support it.
leftBinaryOp
AstIndex leftBinaryOp(Parser p, PreferType preferType, Token token, int rbp, AstIndex left, int nbp)
Undocumented in source. Be warned that the author may not have intended to support it.
leftFuncCall
AstIndex leftFuncCall(Parser p, PreferType preferType, Token token, int unused_rbp, AstIndex callee, int nbp)
Undocumented in source. Be warned that the author may not have intended to support it.
leftFunctionOp
AstIndex leftFunctionOp(Parser p, PreferType preferType, Token token, int rbp, AstIndex returnType, int nbp)
Undocumented in source. Be warned that the author may not have intended to support it.
leftIncDec
AstIndex leftIncDec(Parser p, PreferType preferType, Token token, int rbp, AstIndex left, int nbp)
Undocumented in source. Be warned that the author may not have intended to support it.
leftIndex
AstIndex leftIndex(Parser p, PreferType preferType, Token token, int rbp, AstIndex array, int nbp)
Undocumented in source. Be warned that the author may not have intended to support it.
leftOpDot
AstIndex leftOpDot(Parser p, PreferType preferType, Token token, int rbp, AstIndex left, int nbp)
Undocumented in source. Be warned that the author may not have intended to support it.
leftStarOp
AstIndex leftStarOp(Parser p, PreferType preferType, Token token, int rbp, AstIndex left, int nbp)
Undocumented in source. Be warned that the author may not have intended to support it.
left_error_parser
AstIndex left_error_parser(Parser p, PreferType preferType, Token token, int rbp, AstIndex left, int nbp)
Undocumented in source. Be warned that the author may not have intended to support it.
nullCast
AstIndex nullCast(Parser p, PreferType preferType, Token token, int rbp)
Undocumented in source. Be warned that the author may not have intended to support it.
nullLiteral
AstIndex nullLiteral(Parser p, PreferType preferType, Token token, int rbp)
Undocumented in source. Be warned that the author may not have intended to support it.
nullParen
AstIndex nullParen(Parser p, PreferType preferType, Token token, int rbp)
Undocumented in source. Be warned that the author may not have intended to support it.
nullPrefixAttribute
AstIndex nullPrefixAttribute(Parser p, PreferType preferType, Token token, int rbp)
Undocumented in source. Be warned that the author may not have intended to support it.
nullPrefixOp
AstIndex nullPrefixOp(Parser p, PreferType preferType, Token token, int rbp)
Undocumented in source. Be warned that the author may not have intended to support it.
null_error_parser
AstIndex null_error_parser(Parser p, PreferType preferType, Token token, int rbp)
Undocumented in source. Be warned that the author may not have intended to support it.
parseIntLiteralType
AstIndex parseIntLiteralType(string suffix, TokenIndex tok, CompilationContext* c)
Undocumented in source. Be warned that the author may not have intended to support it.
pass_parser
void pass_parser(CompilationContext ctx, CompilePassPerModule[] subPasses)

<module> = <declaration>* EOF <declaration> = <alias_decl> / <func_decl> / <var_decl> / <struct_decl> / <enum_decl>

Manifest constants

COMMA_PREC
enum COMMA_PREC;
Undocumented in source.
MAX_BP
enum MAX_BP;
Undocumented in source.
MIN_BP
enum MIN_BP;

min and max binding powers

Static variables

g_tokenLookups
TokenLookups g_tokenLookups;
Undocumented in source.

Structs

AttribState
struct AttribState
Undocumented in source.
BroadcastedAttribState
struct BroadcastedAttribState
Undocumented in source.
ImmediateAttribState
struct ImmediateAttribState
Undocumented in source.
LeftInfo
struct LeftInfo
Undocumented in source.
NullInfo
struct NullInfo
Undocumented in source.
Parser
struct Parser
Undocumented in source.
ScopeTempData
struct ScopeTempData
Undocumented in source.
TokenLookups
struct TokenLookups
Undocumented in source.

Meta

Authors

Andrey Penechko. Grammar Lexer Recursive descent parser For expressions pratt parser is used Copyright (c) 2017, Jean-Marc Bourguet https://github.com/bourguet/operator_precedence_parsing/blob/86c11baa737673da521c9cb488fdc3b25d73f0b6/pratt_tdop_parser.py