1 /* see copyright notice in squirrel.h */ 2 #ifndef _SQCOMPILER_H_ 3 #define _SQCOMPILER_H_ 4 5 struct SQVM; 6 7 #define TK_IDENTIFIER 258 8 #define TK_STRING_LITERAL 259 9 #define TK_INTEGER 260 10 #define TK_FLOAT 261 11 #define TK_DELEGATE 262 12 #define TK_DELETE 263 13 #define TK_EQ 264 14 #define TK_NE 265 15 #define TK_LE 266 16 #define TK_GE 267 17 #define TK_SWITCH 268 18 #define TK_ARROW 269 19 #define TK_AND 270 20 #define TK_OR 271 21 #define TK_IF 272 22 #define TK_ELSE 273 23 #define TK_WHILE 274 24 #define TK_BREAK 275 25 #define TK_FOR 276 26 #define TK_DO 277 27 #define TK_NULL 278 28 #define TK_FOREACH 279 29 #define TK_IN 280 30 #define TK_NEWSLOT 281 31 #define TK_MODULO 282 32 #define TK_LOCAL 283 33 #define TK_CLONE 284 34 #define TK_FUNCTION 285 35 #define TK_RETURN 286 36 #define TK_TYPEOF 287 37 #define TK_UMINUS 288 38 #define TK_PLUSEQ 289 39 #define TK_MINUSEQ 290 40 #define TK_CONTINUE 291 41 #define TK_YIELD 292 42 #define TK_TRY 293 43 #define TK_CATCH 294 44 #define TK_THROW 295 45 #define TK_SHIFTL 296 46 #define TK_SHIFTR 297 47 #define TK_RESUME 298 48 #define TK_DOUBLE_COLON 299 49 #define TK_CASE 300 50 #define TK_DEFAULT 301 51 #define TK_THIS 302 52 #define TK_PLUSPLUS 303 53 #define TK_MINUSMINUS 304 54 #define TK_PARENT 305 55 #define TK_USHIFTR 306 56 #define TK_CLASS 307 57 #define TK_EXTENDS 308 58 #define TK_CONSTRUCTOR 310 59 #define TK_INSTANCEOF 311 60 #define TK_VARPARAMS 312 61 #define TK_VARGC 313 62 #define TK_VARGV 314 63 #define TK_TRUE 315 64 #define TK_FALSE 316 65 #define TK_MULEQ 317 66 #define TK_DIVEQ 318 67 #define TK_MODEQ 319 68 #define TK_ATTR_OPEN 320 69 #define TK_ATTR_CLOSE 321 70 71 72 typedef void(*CompilerErrorFunc)(void *ud, const SQChar *s); 73 bool Compile(SQVM *vm, SQLEXREADFUNC rg, SQUserPointer up, const SQChar *sourcename, SQObjectPtr &out, bool raiseerror, bool lineinfo); 74 #endif //_SQCOMPILER_H_ 75