Ruby  1.9.3p448(2013-06-27revision41675)
id.h
Go to the documentation of this file.
1 /* DO NOT EDIT THIS FILE DIRECTLY */
2 /**********************************************************************
3 
4  id.h -
5 
6  $Author: usa $
7  created at: Sun Oct 19 21:12:51 2008
8 
9  Copyright (C) 2007 Koichi Sasada
10 
11 **********************************************************************/
12 
13 #ifndef RUBY_ID_H
14 #define RUBY_ID_H
15 
16 #define ID_SCOPE_SHIFT 3
17 #define ID_SCOPE_MASK 0x07
18 #define ID_LOCAL 0x00
19 #define ID_INSTANCE 0x01
20 #define ID_GLOBAL 0x03
21 #define ID_ATTRSET 0x04
22 #define ID_CONST 0x05
23 #define ID_CLASS 0x06
24 #define ID_JUNK 0x07
25 #define ID_INTERNAL ID_JUNK
26 
27 #ifdef USE_PARSE_H
28 #include "parse.h"
29 #endif
30 
31 #include "vm_opts.h" /* for SUPPORT_JOKE */
32 
33 #define symIFUNC ID2SYM(idIFUNC)
34 #define symCFUNC ID2SYM(idCFUNC)
35 
36 #if !defined tLAST_TOKEN && defined YYTOKENTYPE
37 #define tLAST_TOKEN tLAST_TOKEN
38 #endif
39 
41 #ifndef tLAST_TOKEN
42  tUPLUS = 321,
43  tUMINUS = 322,
44  tPOW = 323,
45  tCMP = 324,
46  tEQ = 325,
47  tEQQ = 326,
48  tNEQ = 327,
49  tGEQ = 328,
50  tLEQ = 329,
51  tANDOP = 330,
52  tOROP = 331,
53  tMATCH = 332,
54  tNMATCH = 333,
55  tDOT2 = 334,
56  tDOT3 = 335,
57  tAREF = 336,
58  tASET = 337,
59  tLSHFT = 338,
60  tRSHFT = 339,
61  tLAMBDA = 352,
62  idNULL = 365,
63  idRespond_to = 366,
64  idIFUNC = 367,
65  idCFUNC = 368,
72  tLAST_TOKEN = 375,
73 #endif
80  idPLUS = '+',
81  idMINUS = '-',
82  idMULT = '*',
83  idDIV = '/',
84  idMOD = '%',
85  idLT = '<',
88  idGT = '>',
90  idEq = tEQ,
93  idNot = '!',
94  idBackquote = '`',
113 #if SUPPORT_JOKE
114  tBitblt,
115  tAnswer,
116 #endif
118 #define TOKEN2ID(n) id##n = ((t##n<<ID_SCOPE_SHIFT)|ID_LOCAL)
119 #if SUPPORT_JOKE
120  TOKEN2ID(Bitblt),
121  TOKEN2ID(Answer),
122 #endif
123  TOKEN2ID(Intern),
124  TOKEN2ID(MethodMissing),
125  TOKEN2ID(Length),
126  TOKEN2ID(Size),
127  TOKEN2ID(Gets),
128  TOKEN2ID(Succ),
129  TOKEN2ID(Each),
130  TOKEN2ID(Proc),
131  TOKEN2ID(Lambda),
132  TOKEN2ID(Send),
133  TOKEN2ID(__send__),
134  TOKEN2ID(Initialize),
135  TOKEN2ID(UScore),
136  TOKEN2ID(LAST_ID)
137 };
138 
139 #ifdef tLAST_TOKEN
140 struct ruby_method_ids_check {
141 #define ruby_method_id_check_for(name, value) \
142  int checking_for_##name[name == (value) ? 1 : -1]
174 };
175 #endif
176 
177 #endif /* RUBY_ID_H */
Definition: id.h:57
Definition: id.h:81
Definition: id.h:75
Definition: id.h:85
Definition: id.h:45
Definition: id.h:83
ruby_method_ids
Definition: ripper.y:40
Definition: id.h:100
Definition: id.h:112
Definition: id.h:102
Definition: id.h:82
Definition: id.h:72
Definition: id.h:62
Definition: id.h:93
Definition: id.h:86
Definition: id.h:97
Definition: id.h:87
Definition: id.h:76
Definition: id.h:92
Definition: id.h:80
Definition: id.h:61
Definition: id.h:43
Definition: id.h:88
Definition: id.h:77
Definition: id.h:58
Definition: id.h:98
Definition: id.h:56
Definition: id.h:104
Definition: id.h:54
Definition: id.h:47
Definition: id.h:109
Definition: id.h:55
Definition: id.h:44
#define ID_SCOPE_SHIFT
Definition: id.h:16
Definition: id.h:49
Definition: id.h:79
Definition: id.h:64
Definition: id.h:60
Definition: id.h:65
#define TOKEN2ID(n)
Definition: id.h:118
Definition: id.h:106
Definition: id.h:84
Definition: id.h:89
Definition: id.h:94
Definition: id.h:48
Definition: id.h:50
Definition: id.h:46
Definition: id.h:59
Definition: id.h:105
Definition: id.h:51
Definition: id.h:74
Definition: id.h:103
Definition: id.h:110
Definition: id.h:52
Definition: id.h:53
Definition: id.h:117
Definition: id.h:107
Definition: id.h:91
Definition: id.h:78
Definition: id.h:96
ruby_method_id_check_for(tUPLUS, 321)
Definition: id.h:108
Definition: id.h:42
Definition: id.h:95
Definition: id.h:90