Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program := definitions
- definitions := definition [definitions]
- definition := type-definition
- := variable-definition
- := namespace-definition
- type-definition := [const] [volatile] identifier [ '[' expression ']' ]
- := expression
- := type-literal
- variable-definition := [variable-modifiers] identifier
- := [variable-modifiers] identifier function-call
- := [variable-modifiers] identifier '=' expression
- namespace-definition := 'namespace' identifier '{' [definitions] '}'
- function-definition := [type-definition] identifier function-arguments-list
- function-arguments-list := function-arguments [function-arguments-list]
- function-arguments := [type-definition] identifier
- variable-modifiers := [static] [auto] [type-definition]
- type-definition-list := type-definition [',' type-definition-list]
- function-call := '(' [expression-list] ')' [function-call]
- function-call-expression := expression function-call
- identifier := [_\w][_\w\d]*
- cast-expression := 'static_cast' function-call
- := 'dynamic_cast' function-call
- := 'reinterpret_cast' function-call
- := 'const_cast' function-call
- arithmetic-expression := expression '*' expression
- := expression '+' expression
- := expression '/' expression
- := expression '-' expression
- := '+' expression
- := '-' expression
- boolean-expression := expression '>' expression
- := expression '<' expression
- := expression '==' expression
- := expression '!=' expression
- := expression '<=' expression
- := expression '>=' expression
- member-expression := expression '.' identifier
- := expression '->' identifier
- type-literal := 'type' [':' type-definition-list] '{' [definitions] '}'
- integral-literal := \d+
- := '0x' [\dA-F]+
- floating-point-literal := \d+ '.' \d+
- literal-expression := type-literal
- := integral-literal
- := floating-point-literal
- access-expression := expression '[' expression ']'
- assignment-expression := expression '=' expression;
- expression-list := [expression [',' expression-list]]
- expression := member-expression
- := boolean-expression
- := arithmetic-expression
- := cast-expression
- := function-call-expression
- := access-expression
- := assignment-expression
- := type-definition
- := identifier
- := literal-expression
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement