Add some more API.
2 * Copyright (C) 2012 David Anderson
4 * This file is part of JITCraft.
6 * JITCraft is free software: you can redistribute it and/or modify it under
7 * the terms of the GNU General Public License as published by the Free
8 * Software Foundation, either version 3 of the License, or (at your option)
11 * Foobar is distributed in the hope that it will be useful, but WITHOUT ANY
12 * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
13 * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
15 * You should have received a copy of the GNU General Public License along with
16 * JITCraft. If not, see http://www.gnu.org/licenses/.
18 #ifndef _include_jitcraft_token_h_
19 #define _include_jitcraft_token_h_
35 // List of tokens the scanner can recognize.
38 // * (ASSIGN_ADD - TOK_PLUS) must be the delta between an operator and its
39 // op-and-assign equivalent.
44 _(RETURN, "'return'") \
46 _(INTEGER_LITERAL, "<integer>") \
47 _(FLOAT_LITERAL, "<float>") \
48 _(STRING_LITERAL, "<string>") \
56 _(CONTINUE, "<continue>") \
79 _(ASSIGN_BITAND, "&=") \
80 _(ASSIGN_BITOR, "|=") \
81 _(ASSIGN_BITXOR, "^=") \
82 _(ASSIGN_SHR, ">>=") \
83 _(ASSIGN_USHR, ">>>=") \
84 _(ASSIGN_SHL, "<<=") \
94 _(EOF, "<end-of-file>")
98 # define _(name, str) TOK_##name,
101 TOK_BITAND = TOK_AMPERSAND,
105 extern const char *TokenNames[];
109 #endif //_include_jitcraft_token_h_