File indexing completed on 2024-04-28 03:40:42
0001 // This file was generated by qlalr - DO NOT EDIT! 0002 #ifndef EXPRESSIONTABLE_P_H 0003 #define EXPRESSIONTABLE_P_H 0004 0005 class ExpressionTable 0006 { 0007 public: 0008 enum VariousConstants { 0009 EOF_SYMBOL = 0, 0010 otherwise_prec = 31, 0011 tAdd = 1, 0012 tAssig = 4, 0013 tAt = 28, 0014 tColon = 27, 0015 tComa = 12, 0016 tComment = 29, 0017 tDiv = 6, 0018 tEq = 21, 0019 tGeq = 25, 0020 tGt = 23, 0021 tId = 9, 0022 tLambda = 10, 0023 tLcb = 15, 0024 tLeq = 24, 0025 tLimits = 5, 0026 tLpr = 13, 0027 tLsp = 17, 0028 tLt = 22, 0029 tMul = 3, 0030 tNeq = 26, 0031 tPipe = 19, 0032 tPow = 7, 0033 tQm = 11, 0034 tRcb = 16, 0035 tRpr = 14, 0036 tRsp = 18, 0037 tString = 30, 0038 tSub = 2, 0039 tUniPow = 8, 0040 tVal = 20, 0041 uminus_prec = 32, 0042 0043 ACCEPT_STATE = 106, 0044 RULE_COUNT = 60, 0045 STATE_COUNT = 109, 0046 TERMINAL_COUNT = 33, 0047 NON_TERMINAL_COUNT = 23, 0048 0049 GOTO_INDEX_OFFSET = 109, 0050 GOTO_INFO_OFFSET = 400, 0051 GOTO_CHECK_OFFSET = 400 0052 }; 0053 0054 static const char *const spell []; 0055 static const short lhs []; 0056 static const short rhs []; 0057 0058 #ifndef QLALR_NO_EXPRESSIONTABLE_DEBUG_INFO 0059 static const int rule_index []; 0060 static const int rule_info []; 0061 #endif // QLALR_NO_EXPRESSIONTABLE_DEBUG_INFO 0062 0063 static const short goto_default []; 0064 static const short action_default []; 0065 static const short action_index []; 0066 static const short action_info []; 0067 static const short action_check []; 0068 0069 static inline int nt_action (int state, int nt) 0070 { 0071 const int yyn = action_index [GOTO_INDEX_OFFSET + state] + nt; 0072 if (yyn < 0 || action_check [GOTO_CHECK_OFFSET + yyn] != nt) 0073 return goto_default [nt]; 0074 0075 return action_info [GOTO_INFO_OFFSET + yyn]; 0076 } 0077 0078 static inline int t_action (int state, int token) 0079 { 0080 const int yyn = action_index [state] + token; 0081 0082 if (yyn < 0 || action_check [yyn] != token) 0083 return - action_default [state]; 0084 0085 return action_info [yyn]; 0086 } 0087 }; 0088 0089 0090 #endif // EXPRESSIONTABLE_P_H 0091