
Description="Bison"

Keywords={
  { Id=1,
    List={"error", "YYABORT", "YYACCEPT", "YYBACKUP", "YYERROR", 
        "YYERROR_VERBOSE", "YYINITDEPTH", "YYLEX_PARAM", "YYLTYPE", "yyltype", 
        "YYMAXDEPTH", "YYPARSE_PARAM", "YYRECOVERING", "YYSTACK_USE_ALLOCA", "YYSTYPE", 
        "yychar", "yyclearin", "yydebug", "yyerrok", "yyerror", "yylex", "yylval", 
        "yylloc", "yynerrs", "yyparse"},
  },
  { Id=2,
    List={"int", "long", "short", "char", "void", "signed", "unsigned", "float", 
        "double", "size_t", "wchar_t", "ptrdiff_t",  "sig_atomic_t", "fpos_t", 
        "clock_t", "time_t", "va_list", "jmp_buf", "FILE", "DIR", "div_t", "ldiv_t", 
        "static", "const", "bool", "struct", "union", "enum", "size_t", "wchar_t", 
        "ptrdiff_t", "sig_atomic_t", "fpos_t", "clock_t", "time_t", "va_list", 
        "jmp_buf", "FILE", "DIR", "div_t", "ldiv_t", "mbstate_t", "wctrans_t", "wint_t", 
        "wctype_t", "bool", "complex", "int8_t", "int16_t", "int32_t", "int64_t", 
        "uint8_t", "uint16_t", "uint32_t", "uint64_t", "int_least8_t", "int_least16_t", 
        "int_least32_t", "int_least64_t", "uint_least8_t", "uint_least16_t", 
        "uint_least32_t", "uint_least64_t", "int_fast8_t", "int_fast16_t", 
        "int_fast32_t", "int_fast64_t", "uint_fast8_t", "uint_fast16_t", 
        "uint_fast32_t", "uint_fast64_t", "intptr_t", "uintptr_t", "intmax_t", 
        "uintmax_t", "string"},
  },
   { Id=3,
     Regex=[[\$\w+]],
   },
  { Id=4,
    Regex=[[^\w+:]],
  },
}

Strings={
  Delimiter=[["|']],
--Escape=[[ \\[ntvbrfa\\\?'"] ]]
}

IgnoreCase=false

Comments={
  { Block=false,
    Delimiter= { [[//]] },
  },
  { Block=true,
    Nested=false,
    Delimiter= { [[\/\*]],[[\*\/]],}
  }
}

PreProcessor={
  Prefix=[[#]],
}

Operators=[[\(|\)|\[|\]|\{|\}|\,|\;|\:|\&|<|>|\!|\=|\/|\*|\+|\-]]
