Ruby  2.0.0p247(2013-06-27revision41674)
id.h
Go to the documentation of this file.
00001 /* DO NOT EDIT THIS FILE DIRECTLY */
00002 /**********************************************************************
00003 
00004   id.h -
00005 
00006   $Author: nobu $
00007   created at: Sun Oct 19 21:12:51 2008
00008 
00009   Copyright (C) 2007 Koichi Sasada
00010 
00011 **********************************************************************/
00012 
00013 #ifndef RUBY_ID_H
00014 #define RUBY_ID_H
00015 
00016 #define ID_SCOPE_SHIFT 3
00017 #define ID_SCOPE_MASK 0x07
00018 #define ID_LOCAL      0x00
00019 #define ID_INSTANCE   0x01
00020 #define ID_GLOBAL     0x03
00021 #define ID_ATTRSET    0x04
00022 #define ID_CONST      0x05
00023 #define ID_CLASS      0x06
00024 #define ID_JUNK       0x07
00025 #define ID_INTERNAL   ID_JUNK
00026 
00027 #define ID2ATTRSET(id) (((id)&~ID_SCOPE_MASK)|ID_ATTRSET)
00028 
00029 #define symIFUNC ID2SYM(idIFUNC)
00030 #define symCFUNC ID2SYM(idCFUNC)
00031 
00032 #define RUBY_TOKEN_DOT2 128
00033 #define RUBY_TOKEN_DOT3 129
00034 #define RUBY_TOKEN_UPLUS 130
00035 #define RUBY_TOKEN_UMINUS 131
00036 #define RUBY_TOKEN_POW 132
00037 #define RUBY_TOKEN_DSTAR 133
00038 #define RUBY_TOKEN_CMP 134
00039 #define RUBY_TOKEN_LSHFT 135
00040 #define RUBY_TOKEN_RSHFT 136
00041 #define RUBY_TOKEN_LEQ 137
00042 #define RUBY_TOKEN_GEQ 138
00043 #define RUBY_TOKEN_EQ 139
00044 #define RUBY_TOKEN_EQQ 140
00045 #define RUBY_TOKEN_NEQ 141
00046 #define RUBY_TOKEN_MATCH 142
00047 #define RUBY_TOKEN_NMATCH 143
00048 #define RUBY_TOKEN_AREF 144
00049 #define RUBY_TOKEN_ASET 145
00050 #define RUBY_TOKEN_COLON2 146
00051 #define RUBY_TOKEN_COLON3 147
00052 #define RUBY_TOKEN(t) RUBY_TOKEN_##t
00053 
00054 enum ruby_method_ids {
00055     idDot2 = RUBY_TOKEN(DOT2),
00056     idDot3 = RUBY_TOKEN(DOT3),
00057     idUPlus = RUBY_TOKEN(UPLUS),
00058     idUMinus = RUBY_TOKEN(UMINUS),
00059     idPow = RUBY_TOKEN(POW),
00060     idCmp = RUBY_TOKEN(CMP),
00061     idPLUS = '+',
00062     idMINUS = '-',
00063     idMULT = '*',
00064     idDIV = '/',
00065     idMOD = '%',
00066     idLT = '<',
00067     idLTLT = RUBY_TOKEN(LSHFT),
00068     idLE = RUBY_TOKEN(LEQ),
00069     idGT = '>',
00070     idGE = RUBY_TOKEN(GEQ),
00071     idEq = RUBY_TOKEN(EQ),
00072     idEqq = RUBY_TOKEN(EQQ),
00073     idNeq = RUBY_TOKEN(NEQ),
00074     idNot = '!',
00075     idBackquote = '`',
00076     idEqTilde = RUBY_TOKEN(MATCH),
00077     idNeqTilde = RUBY_TOKEN(NMATCH),
00078     idAREF = RUBY_TOKEN(AREF),
00079     idASET = RUBY_TOKEN(ASET),
00080     tPRESERVED_ID_BEGIN = 147,
00081     idNULL,
00082     idEmptyP,
00083     idRespond_to,
00084     idRespond_to_missing,
00085     idIFUNC,
00086     idCFUNC,
00087     id_core_set_method_alias,
00088     id_core_set_variable_alias,
00089     id_core_undef_method,
00090     id_core_define_method,
00091     id_core_define_singleton_method,
00092     id_core_set_postexe,
00093     id_core_hash_from_ary,
00094     id_core_hash_merge_ary,
00095     id_core_hash_merge_ptr,
00096     id_core_hash_merge_kwd,
00097     tPRESERVED_ID_END,
00098     tIntern,
00099     tMethodMissing,
00100     tLength,
00101     tSize,
00102     tGets,
00103     tSucc,
00104     tEach,
00105     tProc,
00106     tLambda,
00107     tSend,
00108     t__send__,
00109     tInitialize,
00110     tInitialize_copy,
00111     tInitialize_clone,
00112     tInitialize_dup,
00113     tUScore,
00114 #define TOKEN2LOCALID(n) id##n = ((t##n<<ID_SCOPE_SHIFT)|ID_LOCAL)
00115     TOKEN2LOCALID(Intern),
00116     TOKEN2LOCALID(MethodMissing),
00117     TOKEN2LOCALID(Length),
00118     TOKEN2LOCALID(Size),
00119     TOKEN2LOCALID(Gets),
00120     TOKEN2LOCALID(Succ),
00121     TOKEN2LOCALID(Each),
00122     TOKEN2LOCALID(Proc),
00123     TOKEN2LOCALID(Lambda),
00124     TOKEN2LOCALID(Send),
00125     TOKEN2LOCALID(__send__),
00126     TOKEN2LOCALID(Initialize),
00127     TOKEN2LOCALID(Initialize_copy),
00128     TOKEN2LOCALID(Initialize_clone),
00129     TOKEN2LOCALID(Initialize_dup),
00130     TOKEN2LOCALID(UScore),
00131     tLAST_OP_ID = tPRESERVED_ID_END-1,
00132     idLAST_OP_ID = tLAST_OP_ID >> ID_SCOPE_SHIFT
00133 };
00134 
00135 #endif /* RUBY_ID_H */
00136