7# if __has_include(<SDL2/SDL.h>)
13# if __has_include(<SDL2/SDL_ttf.h>)
14# include <SDL2/SDL_ttf.h>
15# define HAVE_SDL_TTF 1
17# define HAVE_SDL_TTF 0
21# define HAVE_SDL_TTF 0
24#define KINNIE_VERSION "4.1.1"
25#define MAX_TOKENS 2048
26#define MAX_EXPANDED_TOKENS 8192
27#define MAX_FUNCTIONS 64
28#define MAX_NAME_LEN 32
29#define MAX_STRING_LEN 128
30#define MAX_FUNC_PARAMS 16
31#define ARG_BUF_LEN 256
33#define MAX_STRUCT_FIELDS 32
34#define MAX_STRUCT_METHODS 16
#define MAX_TOKENS
Definition kinnie.h:25
#define MAX_STRING_LEN
Definition kinnie.h:29
#define MAX_STRUCT_METHODS
Definition kinnie.h:34
TokenType
Definition kinnie.h:36
@ TOK_INCREMENT
Definition kinnie.h:49
@ TOK_IDENT
Definition kinnie.h:37
@ TOK_RBRACKET
Definition kinnie.h:44
@ TOK_LBRACE
Definition kinnie.h:44
@ TOK_PLUS
Definition kinnie.h:41
@ TOK_DIV_ASSIGN
Definition kinnie.h:48
@ TOK_STRUCT
Definition kinnie.h:46
@ TOK_LSQUARE
Definition kinnie.h:44
@ TOK_MUL
Definition kinnie.h:41
@ TOK_IF_START
Definition kinnie.h:43
@ TOK_COMMA
Definition kinnie.h:45
@ TOK_DIV
Definition kinnie.h:41
@ TOK_NOT
Definition kinnie.h:47
@ TOK_STRING
Definition kinnie.h:37
@ TOK_LESS
Definition kinnie.h:39
@ TOK_EQUALS
Definition kinnie.h:39
@ TOK_ASSIGN
Definition kinnie.h:38
@ TOK_RSQUARE
Definition kinnie.h:44
@ TOK_OR
Definition kinnie.h:47
@ TOK_DOT
Definition kinnie.h:45
@ TOK_ADD
Definition kinnie.h:46
@ TOK_UNKNOWN
Definition kinnie.h:50
@ TOK_MUL_ASSIGN
Definition kinnie.h:48
@ TOK_LOOP_START
Definition kinnie.h:43
@ TOK_PLUS_ASSIGN
Definition kinnie.h:48
@ TOK_FUN_START
Definition kinnie.h:43
@ TOK_KEY_DOWN
Definition kinnie.h:46
@ TOK_MINUS_ASSIGN
Definition kinnie.h:48
@ TOK_MORE
Definition kinnie.h:39
@ TOK_RBRACE
Definition kinnie.h:44
@ TOK_MORE_EQUALS
Definition kinnie.h:40
@ TOK_STOP
Definition kinnie.h:46
@ TOK_NUMBER
Definition kinnie.h:37
@ TOK_MINUS
Definition kinnie.h:41
@ TOK_PRINT
Definition kinnie.h:37
@ TOK_VAR
Definition kinnie.h:37
@ TOK_LESS_EQUALS
Definition kinnie.h:40
@ TOK_ELSE
Definition kinnie.h:43
@ TOK_AND
Definition kinnie.h:47
@ TOK_NOT_EQUALS
Definition kinnie.h:39
@ TOK_MOD
Definition kinnie.h:41
@ TOK_EOF
Definition kinnie.h:42
@ TOK_KEY_PRESSED
Definition kinnie.h:46
@ TOK_LBRACKET
Definition kinnie.h:44
@ TOK_RETURN
Definition kinnie.h:46
@ TOK_DECREMENT
Definition kinnie.h:49
@ TOK_END
Definition kinnie.h:43
#define MAX_FUNC_PARAMS
Definition kinnie.h:30
#define MAX_STRUCT_FIELDS
Definition kinnie.h:33
#define MAX_NAME_LEN
Definition kinnie.h:28
double compile_time
Definition kinnie.h:84
double includes_time
Definition kinnie.h:81
double tokenize_time
Definition kinnie.h:80
double codegen_time
Definition kinnie.h:83
double parse_time
Definition kinnie.h:82
char name[MAX_NAME_LEN]
Definition kinnie.h:59
Token tokens[MAX_TOKENS]
Definition kinnie.h:60
char param_names[MAX_FUNC_PARAMS][MAX_NAME_LEN]
Definition kinnie.h:62
size_t param_count
Definition kinnie.h:63
size_t token_count
Definition kinnie.h:61
size_t field_count
Definition kinnie.h:74
char name[MAX_NAME_LEN]
Definition kinnie.h:67
char field_names[MAX_STRUCT_FIELDS][MAX_NAME_LEN]
Definition kinnie.h:68
int field_is_struct[MAX_STRUCT_FIELDS]
Definition kinnie.h:72
char field_struct_types[MAX_STRUCT_FIELDS][MAX_NAME_LEN]
Definition kinnie.h:73
int field_is_array[MAX_STRUCT_FIELDS]
Definition kinnie.h:71
size_t method_count
Definition kinnie.h:76
char field_defaults[MAX_STRUCT_FIELDS][MAX_STRING_LEN]
Definition kinnie.h:69
int field_is_string[MAX_STRUCT_FIELDS]
Definition kinnie.h:70
Function methods[MAX_STRUCT_METHODS]
Definition kinnie.h:75
char text[MAX_STRING_LEN]
Definition kinnie.h:55
TokenType type
Definition kinnie.h:54