#include <OperationDAGLanguageParser.hh>
template<typename ScannerT>
struct OperationDAGLanguageGrammar::definition< ScannerT >
Definition at line 791 of file OperationDAGLanguageParser.hh.
◆ definition()
template<typename ScannerT >
Definition at line 792 of file OperationDAGLanguageParser.hh.
812 "auto",
"break",
"case",
"char",
"const",
"continue",
813 "default",
"do",
"double",
"else",
"enum",
"extern",
814 "float",
"for",
"goto",
"if",
"int",
"long",
"register",
815 "return",
"short",
"signed",
"sizeof",
"static",
"struct",
816 "switch",
"typedef",
"union",
"unsigned",
"void",
830 AUTO = strlit<>(
"auto");
831 BREAK = strlit<>(
"break");
832 CASE = strlit<>(
"case");
833 CHAR = strlit<>(
"char");
834 CONST = strlit<>(
"const");
838 DOUBLE = strlit<>(
"double");
839 ELSE = strlit<>(
"else");
840 ENUM = strlit<>(
"enum");
841 EXTERN = strlit<>(
"extern");
842 FOR = strlit<>(
"for");
843 FLOAT = strlit<>(
"float");
844 GOTO = strlit<>(
"goto");
846 INT = strlit<>(
"int");
847 LONG = strlit<>(
"long");
849 RETURN = strlit<>(
"return");
850 SHORT = strlit<>(
"short");
851 SIGNED = strlit<>(
"signed");
852 SIZEOF = strlit<>(
"sizeof");
853 STATIC = strlit<>(
"static");
854 STRUCT = strlit<>(
"struct");
855 SWITCH = strlit<>(
"switch");
857 UNION = strlit<>(
"union");
859 VOID = strlit<>(
"void");
861 WHILE = strlit<>(
"while");
866 ((alpha_p |
'_' |
'$') >> *(alnum_p |
'_' |
'$'))
867 - (
keywords >> (anychar_p - (alnum_p |
'_' |
'$')))
877 !chlit<>(
'L') >> chlit<>(
'\"') >>
878 *( strlit<>(
"\\\"") | ( anychar_p - chlit<>(
'\"') )) >>
893 as_lower_d[chlit<>(
'x')] >>
895 !as_lower_d[chlit<>(
'l') | chlit<>(
'u')]
902 >> +range<>(
'0',
'7')
903 >> !as_lower_d[chlit<>(
'l') | chlit<>(
'u')]
910 >> !as_lower_d[chlit<>(
'l') | chlit<>(
'u')]
916 !chlit<>(
'L') >> chlit<>(
'\'') >>
921 >> repeat_p(0, 2)[range<>(
'0',
'7')]
923 | (chlit<>(
'\\') >> anychar_p)
942 >> (chlit<>(
'e') | chlit<>(
'E'))
943 >> !(chlit<>(
'+') | chlit<>(
'-'))
945 >> !as_lower_d[chlit<>(
'l') | chlit<>(
'f')]
954 >> !((chlit<>(
'e') | chlit<>(
'E'))
955 >> !(chlit<>(
'+') | chlit<>(
'-'))
958 >> !as_lower_d[chlit<>(
'l') | chlit<>(
'f')]
967 >> !((chlit<>(
'e') | chlit<>(
'E'))
968 >> !(chlit<>(
'+') | chlit<>(
'-'))
971 >> !as_lower_d[chlit<>(
'l') | chlit<>(
'f')]
988 BOOST_SPIRIT_DEBUG_RULE(
AUTO);
989 BOOST_SPIRIT_DEBUG_RULE(
BREAK);
990 BOOST_SPIRIT_DEBUG_RULE(
CASE);
991 BOOST_SPIRIT_DEBUG_RULE(
CHAR);
992 BOOST_SPIRIT_DEBUG_RULE(
CONST);
994 BOOST_SPIRIT_DEBUG_RULE(
DEFAULT);
995 BOOST_SPIRIT_DEBUG_RULE(
DO);
996 BOOST_SPIRIT_DEBUG_RULE(
DOUBLE);
997 BOOST_SPIRIT_DEBUG_RULE(
ELSE);
998 BOOST_SPIRIT_DEBUG_RULE(
ENUM);
999 BOOST_SPIRIT_DEBUG_RULE(
EXTERN);
1000 BOOST_SPIRIT_DEBUG_RULE(
FOR);
1001 BOOST_SPIRIT_DEBUG_RULE(
FLOAT);
1002 BOOST_SPIRIT_DEBUG_RULE(
GOTO);
1003 BOOST_SPIRIT_DEBUG_RULE(
IF);
1004 BOOST_SPIRIT_DEBUG_RULE(
INT);
1005 BOOST_SPIRIT_DEBUG_RULE(
LONG);
1007 BOOST_SPIRIT_DEBUG_RULE(
RETURN);
1008 BOOST_SPIRIT_DEBUG_RULE(
SHORT);
1009 BOOST_SPIRIT_DEBUG_RULE(
SIGNED);
1010 BOOST_SPIRIT_DEBUG_RULE(
SIZEOF);
1011 BOOST_SPIRIT_DEBUG_RULE(
STATIC);
1012 BOOST_SPIRIT_DEBUG_RULE(
STRUCT);
1013 BOOST_SPIRIT_DEBUG_RULE(
SWITCH);
1014 BOOST_SPIRIT_DEBUG_RULE(
TYPEDEF);
1015 BOOST_SPIRIT_DEBUG_RULE(
UNION);
1017 BOOST_SPIRIT_DEBUG_RULE(
VOID);
1019 BOOST_SPIRIT_DEBUG_RULE(
WHILE);
1087 BOOST_SPIRIT_DEBUG_RULE(
pointer);
1531 | str_p(
"FloatWord")
1532 | str_p(
"DoubleWord")
References TokenizerData::ABSTRACT_DECLARATOR, TokenizerData::ADDITIVE_EXPRESSION, TokenizerData::AND_EXPRESSION, TokenizerData::ASSIGNMENT_EXPRESSION, TokenizerData::ASSIGNMENT_OPERATOR, TokenizerData::CAST_EXPRESSION, TokenizerData::COMPOUND_STATEMENT, TokenizerData::CONDITIONAL_EXPRESSION, TokenizerData::CONST_QUALIFER, TokenizerData::CONSTANT_EXPRESSION, TokenizerData::DECLARATION, TokenizerData::DECLARATION_SPECIFIERS, TokenizerData::DECLARATOR, TokenizerData::DIRECT_ABSTRACT_DECLARATOR, TokenizerData::DIRECT_DECLARATOR, TokenizerData::ENUM_SPECIFIER, TokenizerData::ENUMERATOR, TokenizerData::EQUALITY_EXPRESSION, TokenizerData::EXCLUSIVE_EXPRESSION, TokenizerData::EXPRESSION, TokenizerData::EXPRESSION_STATEMENT, TokenizerData::EXTERNAL_DECLARATION, TokenizerData::FLOAT_LITERAL, TokenizerData::FUNCTION_DEFINITION, TokenizerData::IDENTIFIER, TokenizerData::IDENTIFIER_LIST, TokenizerData::INCLUSIVE_EXPRESSION, TokenizerData::INIT_DECLARATOR, TokenizerData::INITIALIZER, TokenizerData::INITIALIZER_LIST, INT, TokenizerData::INTEGER_LITERAL, TokenizerData::ITERATION_STATEMENT, TokenizerData::JUMP_STATEMENT, TokenizerData::LABELED_STATEMENT, TokenizerData::LOGICAL_AND_EXPRESSION, TokenizerData::LOGICAL_OR_EXPRESSION, LONG, TokenizerData::MULTIPLICATIVE_EXPRESSION, TokenizerData::PARAMETER_DECLARATION, TokenizerData::PARAMETER_LIST, TokenizerData::PARAMETER_TYPE_LIST, TokenizerData::POINTER, TokenizerData::POSTFIX_EXPRESSION, TokenizerData::PRIMARY_EXPRESSION, TokenizerData::RELATIONAL_EXPRESSION, TokenizerData::SELECTION_STATEMENT, TokenizerData::SHIFT_EXPRESSION, TokenizerData::STATEMENT, TokenizerData::STATEMENT_LIST, TokenizerData::STORAGE_CLASS_SPECIFIER, TokenizerData::STRING_LITERAL, TokenizerData::STRUCT_DECLARATION, TokenizerData::STRUCT_DECLARATOR, TokenizerData::STRUCT_OR_UNION, TokenizerData::STRUCT_OR_UNION_SPECIFIER, TokenizerData::TYPE_NAME, TokenizerData::TYPE_QUALIFER, TokenizerData::TYPE_SPECIFIER, TokenizerData::UNARY_ADDROF, TokenizerData::UNARY_BANG, TokenizerData::UNARY_EXPRESSION, TokenizerData::UNARY_MINUS, TokenizerData::UNARY_PLUS, TokenizerData::UNARY_STAR, TokenizerData::UNARY_TILDE, and TokenizerData::VOLATILE_QUALIFER.
◆ start()
template<typename ScannerT >
◆ abstract_declarator
template<typename ScannerT >
◆ ADD_ASSIGN
template<typename ScannerT >
◆ additive_expression
template<typename ScannerT >
◆ additive_expression_helper
template<typename ScannerT >
◆ ADDROF
template<typename ScannerT >
◆ AND_ASSIGN
template<typename ScannerT >
◆ and_expression
template<typename ScannerT >
◆ and_expression_helper
template<typename ScannerT >
◆ AND_OP
template<typename ScannerT >
◆ argument_expression_list
template<typename ScannerT >
◆ ASSIGN
template<typename ScannerT >
◆ assignment_expression
template<typename ScannerT >
◆ assignment_operator
template<typename ScannerT >
◆ AUTO
template<typename ScannerT >
◆ BANG
template<typename ScannerT >
◆ BREAK
template<typename ScannerT >
◆ CASE
template<typename ScannerT >
◆ cast_expression
template<typename ScannerT >
◆ CHAR
template<typename ScannerT >
◆ COLON
template<typename ScannerT >
◆ COMMA
template<typename ScannerT >
◆ compound_statement
template<typename ScannerT >
◆ conditional_expression
template<typename ScannerT >
◆ conditional_expression_helper
template<typename ScannerT >
◆ CONST
template<typename ScannerT >
◆ CONSTANT
template<typename ScannerT >
◆ constant_expression
template<typename ScannerT >
◆ CONTINUE
template<typename ScannerT >
◆ DEC_OP
template<typename ScannerT >
◆ declaration
template<typename ScannerT >
◆ declaration_list
template<typename ScannerT >
◆ declaration_specifiers
template<typename ScannerT >
◆ declarator
template<typename ScannerT >
◆ DEFAULT
template<typename ScannerT >
◆ direct_abstract_declarator
template<typename ScannerT >
◆ direct_abstract_declarator_helper
template<typename ScannerT >
◆ direct_declarator
template<typename ScannerT >
◆ direct_declarator_helper
template<typename ScannerT >
◆ DIV_ASSIGN
template<typename ScannerT >
◆ DO
template<typename ScannerT >
◆ DOT
template<typename ScannerT >
◆ DOUBLE
template<typename ScannerT >
◆ ELLIPSIS
template<typename ScannerT >
◆ ELSE
template<typename ScannerT >
◆ ENUM
template<typename ScannerT >
◆ enum_specifier
template<typename ScannerT >
◆ enumerator
template<typename ScannerT >
◆ enumerator_list
template<typename ScannerT >
◆ EQ_OP
template<typename ScannerT >
◆ equality_expression
template<typename ScannerT >
◆ equality_expression_helper
template<typename ScannerT >
◆ exclusive_or_expression
template<typename ScannerT >
◆ exclusive_or_expression_helper
template<typename ScannerT >
◆ expression
template<typename ScannerT >
◆ expression_helper
template<typename ScannerT >
◆ expression_statement
template<typename ScannerT >
◆ EXTERN
template<typename ScannerT >
◆ external_declaration
template<typename ScannerT >
◆ FLOAT
template<typename ScannerT >
◆ FLOAT_CONSTANT
template<typename ScannerT >
◆ FLOAT_CONSTANT_1
template<typename ScannerT >
◆ FLOAT_CONSTANT_2
template<typename ScannerT >
◆ FLOAT_CONSTANT_3
template<typename ScannerT >
◆ FOR
template<typename ScannerT >
◆ function_definition
template<typename ScannerT >
◆ GE_OP
template<typename ScannerT >
◆ GOTO
template<typename ScannerT >
◆ GT_OP
template<typename ScannerT >
◆ IDENTIFIER
template<typename ScannerT >
◆ identifier_list
template<typename ScannerT >
◆ IF
template<typename ScannerT >
◆ INC_OP
template<typename ScannerT >
◆ inclusive_or_expression
template<typename ScannerT >
◆ inclusive_or_expression_helper
template<typename ScannerT >
◆ init_declarator
template<typename ScannerT >
◆ init_declarator_list
template<typename ScannerT >
◆ initializer
template<typename ScannerT >
◆ initializer_list
template<typename ScannerT >
◆ INT
template<typename ScannerT >
◆ INT_CONSTANT
template<typename ScannerT >
◆ INT_CONSTANT_CHAR
template<typename ScannerT >
◆ INT_CONSTANT_DEC
template<typename ScannerT >
◆ INT_CONSTANT_HEX
template<typename ScannerT >
◆ INT_CONSTANT_OCT
template<typename ScannerT >
◆ iteration_statement
template<typename ScannerT >
◆ jump_statement
template<typename ScannerT >
◆ keywords
template<typename ScannerT >
◆ labeled_statement
template<typename ScannerT >
◆ last_comment_spirit_bugfix
template<typename ScannerT >
◆ LE_OP
template<typename ScannerT >
◆ LEFT_ASSIGN
template<typename ScannerT >
◆ LEFT_BRACE
template<typename ScannerT >
◆ LEFT_BRACKET
template<typename ScannerT >
◆ LEFT_OP
template<typename ScannerT >
◆ LEFT_PAREN
template<typename ScannerT >
◆ logical_and_expression
template<typename ScannerT >
◆ logical_and_expression_helper
template<typename ScannerT >
◆ logical_or_expression
template<typename ScannerT >
◆ logical_or_expression_helper
template<typename ScannerT >
◆ LONG
template<typename ScannerT >
◆ LT_OP
template<typename ScannerT >
◆ MINUS
template<typename ScannerT >
◆ MOD_ASSIGN
template<typename ScannerT >
◆ MUL_ASSIGN
template<typename ScannerT >
◆ multiplicative_expression
template<typename ScannerT >
◆ multiplicative_expression_helper
template<typename ScannerT >
◆ NE_OP
template<typename ScannerT >
◆ OR
template<typename ScannerT >
◆ OR_ASSIGN
template<typename ScannerT >
◆ OR_OP
template<typename ScannerT >
◆ parameter_declaration
template<typename ScannerT >
◆ parameter_list
template<typename ScannerT >
◆ parameter_type_list
template<typename ScannerT >
◆ PERCENT
template<typename ScannerT >
◆ PLUS
template<typename ScannerT >
◆ pointer
template<typename ScannerT >
◆ postfix_expression
template<typename ScannerT >
◆ postfix_expression_helper
template<typename ScannerT >
◆ primary_expression
template<typename ScannerT >
◆ PTR_OP
template<typename ScannerT >
◆ QUEST
template<typename ScannerT >
◆ REGISTER
template<typename ScannerT >
◆ relational_expression
template<typename ScannerT >
◆ relational_expression_helper
template<typename ScannerT >
◆ RETURN
template<typename ScannerT >
◆ RIGHT_ASSIGN
template<typename ScannerT >
◆ RIGHT_BRACE
template<typename ScannerT >
◆ RIGHT_BRACKET
template<typename ScannerT >
◆ RIGHT_OP
template<typename ScannerT >
◆ RIGHT_PAREN
template<typename ScannerT >
◆ selection_statement
template<typename ScannerT >
◆ SEMICOLON
template<typename ScannerT >
◆ shift_expression
template<typename ScannerT >
◆ shift_expression_helper
template<typename ScannerT >
◆ SHORT
template<typename ScannerT >
◆ SIGNED
template<typename ScannerT >
◆ SIZEOF
template<typename ScannerT >
◆ SLASH
template<typename ScannerT >
◆ specifier_qualifier_list
template<typename ScannerT >
◆ STAR
template<typename ScannerT >
◆ statement
template<typename ScannerT >
◆ statement_list
template<typename ScannerT >
◆ STATIC
template<typename ScannerT >
◆ storage_class_specifier
template<typename ScannerT >
◆ STRING_LITERAL
template<typename ScannerT >
◆ STRING_LITERAL_PART
template<typename ScannerT >
◆ STRUCT
template<typename ScannerT >
◆ struct_declaration
template<typename ScannerT >
◆ struct_declaration_list
template<typename ScannerT >
◆ struct_declarator
template<typename ScannerT >
◆ struct_declarator_list
template<typename ScannerT >
◆ struct_or_union
template<typename ScannerT >
◆ struct_or_union_specifier
template<typename ScannerT >
◆ SUB_ASSIGN
template<typename ScannerT >
◆ SWITCH
template<typename ScannerT >
◆ TILDE
template<typename ScannerT >
◆ translation_unit
template<typename ScannerT >
◆ type_name
template<typename ScannerT >
◆ type_qualifier
template<typename ScannerT >
◆ type_qualifier_list
template<typename ScannerT >
◆ type_specifier
template<typename ScannerT >
◆ TYPEDEF
template<typename ScannerT >
◆ unary_expression
template<typename ScannerT >
◆ unary_operator
template<typename ScannerT >
◆ UNION
template<typename ScannerT >
◆ UNSIGNED
template<typename ScannerT >
◆ VOID
template<typename ScannerT >
◆ VOLATILE
template<typename ScannerT >
◆ WHILE
template<typename ScannerT >
◆ XOR
template<typename ScannerT >
◆ XOR_ASSIGN
template<typename ScannerT >
The documentation for this struct was generated from the following file:
rule< ScannerT > and_expression
rule< ScannerT > LEFT_BRACKET
rule< ScannerT > iteration_statement
rule< ScannerT > init_declarator
rule< ScannerT > INT_CONSTANT_OCT
rule< ScannerT > STRING_LITERAL
rule< ScannerT > additive_expression_helper
rule< ScannerT > UNSIGNED
rule< ScannerT > enumerator
rule< ScannerT > declaration
rule< ScannerT > parameter_list
rule< ScannerT > abstract_declarator
@ STRUCT_OR_UNION_SPECIFIER
rule< ScannerT > expression
@ STORAGE_CLASS_SPECIFIER
rule< ScannerT > logical_and_expression
rule< ScannerT > cast_expression
rule< ScannerT > RIGHT_BRACKET
rule< ScannerT > jump_statement
rule< ScannerT > relational_expression_helper
rule< ScannerT > exclusive_or_expression_helper
rule< ScannerT > postfix_expression_helper
rule< ScannerT > selection_statement
rule< ScannerT > logical_and_expression_helper
rule< ScannerT > struct_declarator
rule< ScannerT > translation_unit
rule< ScannerT > LEFT_BRACE
rule< ScannerT > storage_class_specifier
rule< ScannerT > FLOAT_CONSTANT_1
rule< ScannerT > assignment_expression
rule< ScannerT > multiplicative_expression_helper
rule< ScannerT > statement
rule< ScannerT > specifier_qualifier_list
rule< ScannerT > RIGHT_BRACE
@ DIRECT_ABSTRACT_DECLARATOR
rule< ScannerT > type_specifier
rule< ScannerT > FLOAT_CONSTANT_2
rule< ScannerT > REGISTER
rule< ScannerT > postfix_expression
rule< ScannerT > labeled_statement
rule< ScannerT > type_qualifier_list
rule< ScannerT > expression_helper
rule< ScannerT > struct_declaration
rule< ScannerT > unary_operator
rule< ScannerT > multiplicative_expression
rule< ScannerT > init_declarator_list
rule< ScannerT > direct_abstract_declarator
rule< ScannerT > logical_or_expression
rule< ScannerT > direct_abstract_declarator_helper
rule< ScannerT > expression_statement
rule< ScannerT > INT_CONSTANT_HEX
rule< ScannerT > and_expression_helper
rule< ScannerT > INT_CONSTANT_CHAR
rule< ScannerT > external_declaration
rule< ScannerT > function_definition
rule< ScannerT > equality_expression
rule< ScannerT > primary_expression
rule< ScannerT > enumerator_list
rule< ScannerT > direct_declarator
rule< ScannerT > FLOAT_CONSTANT
rule< ScannerT > direct_declarator_helper
rule< ScannerT > struct_or_union_specifier
rule< ScannerT > FLOAT_CONSTANT_3
rule< ScannerT > declarator
rule< ScannerT > INT_CONSTANT
rule< ScannerT > struct_declaration_list
rule< ScannerT > relational_expression
rule< ScannerT > INT_CONSTANT_DEC
rule< ScannerT > IDENTIFIER
rule< ScannerT > statement_list
rule< ScannerT > parameter_type_list
rule< ScannerT > inclusive_or_expression_helper
rule< ScannerT > struct_or_union
rule< ScannerT > STRING_LITERAL_PART
rule< ScannerT > type_name
rule< ScannerT > struct_declarator_list
@ MULTIPLICATIVE_EXPRESSION
rule< ScannerT > identifier_list
rule< ScannerT > conditional_expression_helper
rule< ScannerT > exclusive_or_expression
rule< ScannerT > shift_expression_helper
rule< ScannerT > declaration_specifiers
rule< ScannerT > initializer
rule< ScannerT > shift_expression
rule< ScannerT > initializer_list
rule< ScannerT > parameter_declaration
rule< ScannerT > type_qualifier
rule< ScannerT > VOLATILE
rule< ScannerT > CONTINUE
rule< ScannerT > compound_statement
rule< ScannerT > declaration_list
rule< ScannerT > enum_specifier
rule< ScannerT > additive_expression
rule< ScannerT > assignment_operator
rule< ScannerT > unary_expression
rule< ScannerT > logical_or_expression_helper
rule< ScannerT > CONSTANT
rule< ScannerT > constant_expression
rule< ScannerT > conditional_expression
rule< ScannerT > inclusive_or_expression
rule< ScannerT > equality_expression_helper
rule< ScannerT > argument_expression_list