forked from ground/ground
Stuff
This commit is contained in:
18
src/types.h
18
src/types.h
@@ -10,6 +10,24 @@
|
||||
|
||||
#define MAX_ID_LEN 64
|
||||
|
||||
// If targeting WASM, define WASM specific stuff
|
||||
#ifdef __EMSCRIPTEN__
|
||||
#include <emscripten.h>
|
||||
|
||||
void wasm_print(const char* str);
|
||||
|
||||
#undef printf
|
||||
#define printf(fmt, ...) do { \
|
||||
int __needed = snprintf(NULL, 0, fmt, ##__VA_ARGS__) + 1; \
|
||||
char* __buf = malloc(__needed); \
|
||||
if (__buf) { \
|
||||
snprintf(__buf, __needed, fmt, ##__VA_ARGS__); \
|
||||
wasm_print(__buf); \
|
||||
free(__buf); \
|
||||
} \
|
||||
} while(0)
|
||||
#endif
|
||||
|
||||
typedef enum GroundInstType {
|
||||
IF, JUMP, END, INPUT, PRINT, PRINTLN, SET, GETTYPE, EXISTS, SETLIST, SETLISTAT, GETLISTAT, GETLISTSIZE, LISTAPPEND, GETSTRSIZE, GETSTRCHARAT, ADD, SUBTRACT, MULTIPLY, DIVIDE, EQUAL, INEQUAL, NOT, GREATER, LESSER, STOI, STOD, ITOC, CTOI, TOSTRING, FUN, RETURN, ENDFUN, PUSHARG, CALL, STRUCT, ENDSTRUCT, INIT, GETFIELD, SETFIELD, USE, EXTERN, CREATELABEL, PAUSE, DROP, ERRORCMD
|
||||
} GroundInstType;
|
||||
|
||||
Reference in New Issue
Block a user