pptok.h 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158
  1. /* Automatically generated from ./asm/pptok.dat by ./asm/pptok.pl */
  2. /* Do not edit */
  3. enum preproc_token {
  4. PP_ELIF = 0,
  5. PP_ELIFN = 1,
  6. PP_ELIFCTX = 2,
  7. PP_ELIFNCTX = 3,
  8. PP_ELIFDEF = 4,
  9. PP_ELIFNDEF = 5,
  10. PP_ELIFEMPTY = 6,
  11. PP_ELIFNEMPTY = 7,
  12. PP_ELIFENV = 8,
  13. PP_ELIFNENV = 9,
  14. PP_ELIFID = 10,
  15. PP_ELIFNID = 11,
  16. PP_ELIFIDN = 12,
  17. PP_ELIFNIDN = 13,
  18. PP_ELIFIDNI = 14,
  19. PP_ELIFNIDNI = 15,
  20. PP_ELIFMACRO = 16,
  21. PP_ELIFNMACRO = 17,
  22. PP_ELIFNUM = 18,
  23. PP_ELIFNNUM = 19,
  24. PP_ELIFSTR = 20,
  25. PP_ELIFNSTR = 21,
  26. PP_ELIFTOKEN = 22,
  27. PP_ELIFNTOKEN = 23,
  28. PP_IF = 32,
  29. PP_IFN = 33,
  30. PP_IFCTX = 34,
  31. PP_IFNCTX = 35,
  32. PP_IFDEF = 36,
  33. PP_IFNDEF = 37,
  34. PP_IFEMPTY = 38,
  35. PP_IFNEMPTY = 39,
  36. PP_IFENV = 40,
  37. PP_IFNENV = 41,
  38. PP_IFID = 42,
  39. PP_IFNID = 43,
  40. PP_IFIDN = 44,
  41. PP_IFNIDN = 45,
  42. PP_IFIDNI = 46,
  43. PP_IFNIDNI = 47,
  44. PP_IFMACRO = 48,
  45. PP_IFNMACRO = 49,
  46. PP_IFNUM = 50,
  47. PP_IFNNUM = 51,
  48. PP_IFSTR = 52,
  49. PP_IFNSTR = 53,
  50. PP_IFTOKEN = 54,
  51. PP_IFNTOKEN = 55,
  52. PP_ARG = 64,
  53. PP_ASSIGN = 65,
  54. PP_CLEAR = 66,
  55. PP_DEFINE = 67,
  56. PP_DEFSTR = 68,
  57. PP_DEFTOK = 69,
  58. PP_DEPEND = 70,
  59. PP_ELSE = 71,
  60. PP_ENDIF = 72,
  61. PP_ENDM = 73,
  62. PP_ENDMACRO = 74,
  63. PP_ENDREP = 75,
  64. PP_ERROR = 76,
  65. PP_EXITMACRO = 77,
  66. PP_EXITREP = 78,
  67. PP_FATAL = 79,
  68. PP_IASSIGN = 80,
  69. PP_IDEFINE = 81,
  70. PP_IDEFSTR = 82,
  71. PP_IDEFTOK = 83,
  72. PP_IMACRO = 84,
  73. PP_INCLUDE = 85,
  74. PP_IRMACRO = 86,
  75. PP_IXDEFINE = 87,
  76. PP_LINE = 88,
  77. PP_LOCAL = 89,
  78. PP_MACRO = 90,
  79. PP_PATHSEARCH = 91,
  80. PP_POP = 92,
  81. PP_PRAGMA = 93,
  82. PP_PUSH = 94,
  83. PP_REP = 95,
  84. PP_REPL = 96,
  85. PP_RMACRO = 97,
  86. PP_ROTATE = 98,
  87. PP_STACKSIZE = 99,
  88. PP_STRCAT = 100,
  89. PP_STRLEN = 101,
  90. PP_SUBSTR = 102,
  91. PP_UNDEF = 103,
  92. PP_UNIMACRO = 104,
  93. PP_UNMACRO = 105,
  94. PP_USE = 106,
  95. PP_WARNING = 107,
  96. PP_XDEFINE = 108,
  97. PP_INVALID = -1
  98. };
  99. enum pp_conditional {
  100. PPC_IF = 0, PPC_IFCTX = 2, PPC_IFDEF = 4, PPC_IFEMPTY = 6, PPC_IFENV = 8, PPC_IFID = 10, PPC_IFIDN = 12, PPC_IFIDNI = 14, PPC_IFMACRO = 16, PPC_IFNUM = 18, PPC_IFSTR = 20, PPC_IFTOKEN = 22
  101. };
  102. #define PP_COND(x) ((enum pp_conditional)((x) & 0x1e))
  103. #define PP_IS_COND(x) ((unsigned int)(x) < PP_ARG)
  104. #define PP_NEGATIVE(x) ((x) & 1)
  105. #define CASE_PP_ELIF \
  106. case PP_ELIF: \
  107. case PP_ELIFN:\
  108. case PP_ELIFCTX: \
  109. case PP_ELIFNCTX:\
  110. case PP_ELIFDEF: \
  111. case PP_ELIFNDEF:\
  112. case PP_ELIFEMPTY: \
  113. case PP_ELIFNEMPTY:\
  114. case PP_ELIFENV: \
  115. case PP_ELIFNENV:\
  116. case PP_ELIFID: \
  117. case PP_ELIFNID:\
  118. case PP_ELIFIDN: \
  119. case PP_ELIFNIDN:\
  120. case PP_ELIFIDNI: \
  121. case PP_ELIFNIDNI:\
  122. case PP_ELIFMACRO: \
  123. case PP_ELIFNMACRO:\
  124. case PP_ELIFNUM: \
  125. case PP_ELIFNNUM:\
  126. case PP_ELIFSTR: \
  127. case PP_ELIFNSTR:\
  128. case PP_ELIFTOKEN: \
  129. case PP_ELIFNTOKEN
  130. #define CASE_PP_IF \
  131. case PP_IF: \
  132. case PP_IFN:\
  133. case PP_IFCTX: \
  134. case PP_IFNCTX:\
  135. case PP_IFDEF: \
  136. case PP_IFNDEF:\
  137. case PP_IFEMPTY: \
  138. case PP_IFNEMPTY:\
  139. case PP_IFENV: \
  140. case PP_IFNENV:\
  141. case PP_IFID: \
  142. case PP_IFNID:\
  143. case PP_IFIDN: \
  144. case PP_IFNIDN:\
  145. case PP_IFIDNI: \
  146. case PP_IFNIDNI:\
  147. case PP_IFMACRO: \
  148. case PP_IFNMACRO:\
  149. case PP_IFNUM: \
  150. case PP_IFNNUM:\
  151. case PP_IFSTR: \
  152. case PP_IFNSTR:\
  153. case PP_IFTOKEN: \
  154. case PP_IFNTOKEN