16 #define ID_SCOPE_SHIFT 3
17 #define ID_SCOPE_MASK 0x07
19 #define ID_INSTANCE 0x01
20 #define ID_GLOBAL 0x03
21 #define ID_ATTRSET 0x04
25 #define ID_INTERNAL ID_JUNK
33 #define symIFUNC ID2SYM(idIFUNC)
34 #define symCFUNC ID2SYM(idCFUNC)
36 #if !defined tLAST_TOKEN && defined YYTOKENTYPE
37 #define tLAST_TOKEN tLAST_TOKEN
118 #define TOKEN2ID(n) id##n = ((t##n<<ID_SCOPE_SHIFT)|ID_LOCAL)
140 struct ruby_method_ids_check {
141 #define ruby_method_id_check_for(name, value) \
142 int checking_for_##name[name == (value) ? 1 : -1]
143 ruby_method_id_check_for(
tUPLUS, 321);
144 ruby_method_id_check_for(
tUMINUS, 322);
145 ruby_method_id_check_for(
tPOW, 323);
146 ruby_method_id_check_for(
tCMP, 324);
147 ruby_method_id_check_for(
tEQ, 325);
148 ruby_method_id_check_for(
tEQQ, 326);
149 ruby_method_id_check_for(
tNEQ, 327);
150 ruby_method_id_check_for(
tGEQ, 328);
151 ruby_method_id_check_for(
tLEQ, 329);
152 ruby_method_id_check_for(
tANDOP, 330);
153 ruby_method_id_check_for(
tOROP, 331);
154 ruby_method_id_check_for(
tMATCH, 332);
155 ruby_method_id_check_for(
tNMATCH, 333);
156 ruby_method_id_check_for(
tDOT2, 334);
157 ruby_method_id_check_for(
tDOT3, 335);
158 ruby_method_id_check_for(
tAREF, 336);
159 ruby_method_id_check_for(
tASET, 337);
160 ruby_method_id_check_for(
tLSHFT, 338);
161 ruby_method_id_check_for(
tRSHFT, 339);
162 ruby_method_id_check_for(
tLAMBDA, 352);
163 ruby_method_id_check_for(
idNULL, 365);
165 ruby_method_id_check_for(
idIFUNC, 367);
166 ruby_method_id_check_for(
idCFUNC, 368);