/* DO NOT EDIT THIS FILE DIRECTLY */ /********************************************************************** id.h - $Author$ created at: Sun Oct 19 21:12:51 2008 Copyright (C) 2007 Koichi Sasada **********************************************************************/ #ifndef RUBY_ID_H #define RUBY_ID_H enum ruby_id_types { RUBY_ID_STATIC_SYM = 0x01, RUBY_ID_LOCAL = 0x00, RUBY_ID_INSTANCE = (0x01<<1), RUBY_ID_GLOBAL = (0x03<<1), RUBY_ID_ATTRSET = (0x04<<1), RUBY_ID_CONST = (0x05<<1), RUBY_ID_CLASS = (0x06<<1), RUBY_ID_JUNK = (0x07<<1), RUBY_ID_INTERNAL = RUBY_ID_JUNK, RUBY_ID_SCOPE_SHIFT = 4, RUBY_ID_SCOPE_MASK = (~(~0U<<(RUBY_ID_SCOPE_SHIFT-1))<<1) }; #define ID_STATIC_SYM RUBY_ID_STATIC_SYM #define ID_SCOPE_SHIFT RUBY_ID_SCOPE_SHIFT #define ID_SCOPE_MASK RUBY_ID_SCOPE_MASK #define ID_LOCAL RUBY_ID_LOCAL #define ID_INSTANCE RUBY_ID_INSTANCE #define ID_GLOBAL RUBY_ID_GLOBAL #define ID_ATTRSET RUBY_ID_ATTRSET #define ID_CONST RUBY_ID_CONST #define ID_CLASS RUBY_ID_CLASS #define ID_JUNK RUBY_ID_JUNK #define ID_INTERNAL RUBY_ID_INTERNAL #define symIFUNC ID2SYM(idIFUNC) #define symCFUNC ID2SYM(idCFUNC) #define RUBY_TOKEN_DOT2 128 #define RUBY_TOKEN_DOT3 129 #define RUBY_TOKEN_BDOT2 130 #define RUBY_TOKEN_BDOT3 131 #define RUBY_TOKEN_UPLUS 132 #define RUBY_TOKEN_UMINUS 133 #define RUBY_TOKEN_POW 134 #define RUBY_TOKEN_CMP 135 #define RUBY_TOKEN_LSHFT 136 #define RUBY_TOKEN_RSHFT 137 #define RUBY_TOKEN_LEQ 138 #define RUBY_TOKEN_GEQ 139 #define RUBY_TOKEN_EQ 140 #define RUBY_TOKEN_EQQ 141 #define RUBY_TOKEN_NEQ 142 #define RUBY_TOKEN_MATCH 143 #define RUBY_TOKEN_NMATCH 144 #define RUBY_TOKEN_AREF 145 #define RUBY_TOKEN_ASET 146 #define RUBY_TOKEN_COLON2 147 #define RUBY_TOKEN_ANDOP 148 #define RUBY_TOKEN_OROP 149 #define RUBY_TOKEN_ANDDOT 150 #define RUBY_TOKEN(t) RUBY_TOKEN_##t #define RUBY_TOKEN2ID_TYPE(tok, type) ((tok<> ID_SCOPE_SHIFT }; #endif /* RUBY_ID_H */