Files
Client/GameTools/ScriptEngine/lex.h
LGram16 dd97ddec92 Restructure repository to include all source folders
Move git root from Client/ to src/ to track all source code:
- Client: Game client source (moved to Client/Client/)
- Server: Game server source
- GameTools: Development tools
- CryptoSource: Encryption utilities
- database: Database scripts
- Script: Game scripts
- rylCoder_16.02.2008_src: Legacy coder tools
- GMFont, Game: Additional resources

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 20:17:20 +09:00

167 lines
3.1 KiB
C

// lex.h: lexer defines & declarations
#ifndef _LEX_H_
#define _LEX_H_
#include <stdio.h>
#ifdef _LEX_CPP_
int lineno = 1; // line number count; this will be used for error messages later
#else
// Import some variables
extern int lineno;
extern FILE *yyin; // the input stream
// Function prototype
int yylex ();
#endif
int yyparse ();
#ifndef YYLTYPE
typedef
struct yyltype
{
int timestamp;
int first_line;
int first_column;
int last_line;
int last_column;
char *text;
}
yyltype;
#define YYLTYPE yyltype
#endif
extern YYLTYPE yylloc;
/*
enum {
TOKEN_BEGIN = 258,
TOKEN_INCLUDE,
TOKEN_DEFINE,
TOKEN_INTEGERVALUE,
TOKEN_FLOATVALUE,
TOKEN_BOOLVALUE,
TOKEN_STRINGVALUE,
TOKEN_VOID,
TOKEN_INT,
TOKEN_FLOAT,
TOKEN_BOOL,
TOKEN_STRING,
TOKEN_FOR,
TOKEN_WHILE,
TOKEN_IF,
TOKEN_ELSE,
TOKEN_SWITCH,
TOKEN_CASE,
TOKEN_DEFAULT,
TOKEN_CONTINUE,
TOKEN_BREAK,
TOKEN_RETURN,
TOKEN_ID,
TOKEN_ADDITION,
TOKEN_SUBTRACTION,
TOKEN_MULTIPLICATION,
TOKEN_DIVISION,
TOKEN_REMINDER,
TOKEN_ASSIGNMENT,
TOKEN_COMPOUNDADDITION,
TOKEN_COMPOUNDSUBTRACTION,
TOKEN_COMPOUNDMULTIPLICATION,
TOKEN_COMPOUNDDIVISION,
TOKEN_COMPOUNDREMINDER,
TOKEN_INCREMENT,
TOKEN_DECREMENT,
TOKEN_NOT,
TOKEN_LESSTHAN,
TOKEN_LESSTHANOREQUAL,
TOKEN_MORETHAN,
TOKEN_MORETHANOREQUAL,
TOKEN_EQUALITY,
TOKEN_NOTEQUAL,
TOKEN_AND,
TOKEN_OR,
TOKEN_ENDSTATEMENT,
TOKEN_LEFTPARENTHESIS,
TOKEN_RIGHTPARENTHESIS,
TOKEN_LEFTBRACE,
TOKEN_RIGHTBRACE,
TOKEN_LEFTBRACKET,
TOKEN_RIGHTBRACKET,
TOKEN_COMMA,
TOKEN_COLON,
TOKEN_ERROR,
TOKEN_END
};
*/
#define TOKEN_ID 258
#define TOKEN_INTEGERVALUE 259
#define TOKEN_FLOATVALUE 260
#define TOKEN_BOOLVALUE 261
#define TOKEN_STRINGVALUE 262
#define TOKEN_INT 263
#define TOKEN_FLOAT 264
#define TOKEN_BOOL 265
#define TOKEN_STRING 266
#define TOKEN_VOID 267
#define TOKEN_FOR 268
#define TOKEN_WHILE 269
#define TOKEN_IF 270
#define TOKEN_ELSE 271
#define TOKEN_SWITCH 272
#define TOKEN_CASE 273
#define TOKEN_DEFAULT 274
#define TOKEN_CONTINUE 275
#define TOKEN_BREAK 276
#define TOKEN_RETURN 277
#define TOKEN_ENDSTATEMENT 278
#define TOKEN_LEFTPARENTHESIS 279
#define TOKEN_RIGHTPARENTHESIS 280
#define TOKEN_LEFTBRACE 281
#define TOKEN_RIGHTBRACE 282
#define TOKEN_LEFTBRACKET 283
#define TOKEN_RIGHTBRACKET 284
#define TOKEN_ERROR 285
#define TOKEN_COMMA 286
#define TOKEN_COLON 287
#define TOKEN_ASSIGNMENT 288
#define TOKEN_COMPOUNDADDITION 289
#define TOKEN_COMPOUNDSUBTRACTION 290
#define TOKEN_COMPOUNDMULTIPLICATION 291
#define TOKEN_COMPOUNDDIVISION 292
#define TOKEN_COMPOUNDREMINDER 293
#define TOKEN_AND 294
#define TOKEN_OR 295
#define TOKEN_LESSTHAN 296
#define TOKEN_LESSTHANOREQUAL 297
#define TOKEN_MORETHAN 298
#define TOKEN_MORETHANOREQUAL 299
#define TOKEN_EQUALITY 300
#define TOKEN_NOTEQUAL 301
#define TOKEN_ADDITION 302
#define TOKEN_SUBTRACTION 303
#define TOKEN_MULTIPLICATION 304
#define TOKEN_DIVISION 305
#define TOKEN_REMINDER 306
#define TOKEN_NOT 307
#define PREFIXINCREMENT 308
#define PREFIXDECREMENT 309
#define TOKEN_INCREMENT 310
#define TOKEN_DECREMENT 311
#define TOKEN_INCLUDE 312
#define TOKEN_DEFINE 313
#endif