42#define NSEEL_CGEN_CALL __cdecl
44#define NSEEL_CGEN_CALL
70#define NSEEL_addfunc_retval(name,np,pproc,fptr) \
71 NSEEL_addfunc_ret_type(name,np,1,pproc,(void *)(fptr),NSEEL_ADDFUNC_DESTINATION)
74#define NSEEL_addfunc_retptr(name,np,pproc,fptr) \
75 NSEEL_addfunc_ret_type(name,np,0,pproc,(void *)(fptr),NSEEL_ADDFUNC_DESTINATION)
78#define NSEEL_addfunc_retbool(name,np,pproc,fptr) \
79 NSEEL_addfunc_ret_type(name,np,-1,pproc,(void *)(fptr),NSEEL_ADDFUNC_DESTINATION)
82#define NSEEL_addfunc_varparm(name, min_np, pproc, fptr) \
83 NSEEL_addfunc_varparm_ex(name,min_np,0,pproc,fptr,NSEEL_ADDFUNC_DESTINATION)
86#define NSEEL_addfunc_exparms(name, np, pproc, fptr) \
87 NSEEL_addfunc_varparm_ex(name,np,1,pproc,fptr,NSEEL_ADDFUNC_DESTINATION)
91#define NSEEL_addfunction(name,nparms,code,len) NSEEL_addfunctionex((name),(nparms),(code),(len),0,0)
92#define NSEEL_addfunctionex(name,nparms,code,len,pproc,fptr) NSEEL_addfunctionex2((name),(nparms),(code),(len),(pproc),(fptr),0, NSEEL_ADDFUNC_DESTINATION)
94#ifndef NSEEL_ADDFUNC_DESTINATION
95#define NSEEL_ADDFUNC_DESTINATION (NULL)
167 EEL_F (*onNamedString)(
void *caller_this,
const char *
name));
174#define NSEEL_CODE_COMPILE_FLAG_COMMONFUNCS 1
175#define NSEEL_CODE_COMPILE_FLAG_COMMONFUNCS_RESET 2
176#define NSEEL_CODE_COMPILE_FLAG_NOFPSTATE 4
177#define NSEEL_CODE_COMPILE_FLAG_ONLY_BUILTIN_FUNCTIONS 8
199#define NSEEL_SUPER_MINIMAL_LEXER
203#define NSEEL_MAX_VARIABLE_NAMELEN 128
204#define NSEEL_MAX_EELFUNC_PARAMETERS 40
205#define NSEEL_MAX_FUNCSIG_NAME 2048
208#ifndef NSEEL_LOOPFUNC_SUPPORT_MAXLEN
209#define NSEEL_LOOPFUNC_SUPPORT_MAXLEN 1048576
212#define NSEEL_MAX_FUNCTION_SIZE_FOR_INLINE 2048
215#define NSEEL_SHARED_GRAM_SIZE (1<<20)
226#define NSEEL_RAM_BLOCKS_DEFAULTMAX 128
229#define NSEEL_RAM_BLOCKS_LOG2 9
232#define NSEEL_RAM_ITEMSPERBLOCK_LOG2 16
234#define NSEEL_RAM_BLOCKS (1 << NSEEL_RAM_BLOCKS_LOG2)
235#define NSEEL_RAM_ITEMSPERBLOCK (1<<NSEEL_RAM_ITEMSPERBLOCK_LOG2)
237#define NSEEL_STACK_SIZE 4096
242#ifdef EEL_TARGET_PORTABLE
243#ifdef EEL_PORTABLE_TAILCALL
244typedef void (*EEL_BC_TYPE)(
void *next_inst,
void *state);
246#define EEL_BC_TYPE int
250#ifdef NSEEL_EEL1_COMPAT_MODE
251double *NSEEL_getglobalregs();
257extern void *(*nseel_gmem_calloc)(size_t,size_t);
unsigned s
Definition inflate.c:1555
EEL_F *(* NSEEL_VM_regvar)(NSEEL_VMCTX ctx, const char *name)
Definition eel_import.h:13
EEL_F *(* NSEEL_VM_getramptr)(NSEEL_VMCTX ctx, unsigned int offs, int *validAmt)
Definition eel_import.h:23
void(* NSEEL_VM_free)(NSEEL_VMCTX ctx)
Definition eel_import.h:11
void(* eel_leavefp)(int s[2])
Definition eel_import.h:43
void(* NSEEL_VM_SetGRAM)(NSEEL_VMCTX, void **)
Definition eel_import.h:10
void(* NSEEL_VM_set_var_resolver)(NSEEL_VMCTX ctx, EEL_F *(*res)(void *userctx, const char *name), void *userctx)
Definition eel_import.h:17
NSEEL_CODEHANDLE(* NSEEL_code_compile_ex)(NSEEL_VMCTX ctx, const char *code, int lineoffs, int flags)
Definition eel_import.h:16
void(* NSEEL_VM_SetStringFunc)(NSEEL_VMCTX ctx, EEL_F(*onString)(void *caller_this, struct eelStringSegmentRec *list), EEL_F(*onNamedString)(void *caller_this, const char *name))
Definition eel_import.h:32
void(* NSEEL_code_free)(NSEEL_CODEHANDLE code)
Definition eel_import.h:20
void(* NSEEL_code_execute)(NSEEL_CODEHANDLE code)
Definition eel_import.h:19
int(* nseel_stringsegments_tobuf)(char *bufOut, int bufout_sz, struct eelStringSegmentRec *list)
Definition eel_import.h:37
void(* eel_enterfp)(int s[2])
Definition eel_import.h:42
void(* NSEEL_VM_enumallvars)(NSEEL_VMCTX ctx, int(*func)(const char *name, EEL_F *val, void *ctx), void *userctx)
Definition eel_import.h:22
char *(* NSEEL_code_getcodeerror)(NSEEL_VMCTX ctx)
Definition eel_import.h:18
void(* NSEEL_addfunc_ret_type)(const char *name, int np, int ret_type, NSEEL_PPPROC pproc, void *fptr, eel_function_table *destination)
Definition eel_import.h:5
void(* NSEEL_addfunc_varparm_ex)(const char *name, int min_np, int want_exact, NSEEL_PPPROC pproc, EEL_F(NSEEL_CGEN_CALL *fptr)(void *, INT_PTR, EEL_F **), eel_function_table *destination)
Definition eel_import.h:6
void(* NSEEL_VM_SetFunctionTable)(NSEEL_VMCTX, eel_function_table *tab)
Definition eel_import.h:12
void(* NSEEL_VM_SetCustomFuncThis)(NSEEL_VMCTX ctx, void *thisptr)
Definition eel_import.h:15
static const char * name
Definition pugl.h:1582
int val
Definition jpeglib.h:956
JSAMPIMAGE data
Definition jpeglib.h:945
unsigned int NSEEL_RAM_memused
Definition nseel-ram.c:40
void NSEEL_VM_remove_all_nonreg_vars(NSEEL_VMCTX _ctx)
Definition nseel-compiler.c:5480
int NSEEL_init()
Definition nseel-compiler.c:711
void NSEEL_addfunc_varparm_ctxptr(const char *name, int min_np, int want_exact, void *ctxptr, EEL_F(NSEEL_CGEN_CALL *fptr)(void *, INT_PTR, EEL_F **), eel_function_table *destination)
Definition nseel-compiler.c:729
EEL_F * NSEEL_VM_getvar(NSEEL_VMCTX ctx, const char *name)
Definition nseel-compiler.c:5650
EEL_F * NSEEL_VM_getramptr_noalloc(NSEEL_VMCTX ctx, unsigned int offs, int *validCount)
Definition nseel-ram.c:446
int NSEEL_RAM_memused_errors
Definition nseel-ram.c:41
void NSEEL_VM_freeRAM(NSEEL_VMCTX ctx)
Definition nseel-ram.c:393
void *(* NSEEL_PPPROC)(void *data, int data_size, struct _compileContext *userfunc_data)
Definition ns-eel.h:107
#define NSEEL_CGEN_CALL
Definition ns-eel.h:44
void NSEEL_VM_remove_unused_vars(NSEEL_VMCTX _ctx)
Definition nseel-compiler.c:5474
void NSEEL_addfunc_varparm_ctxptr2(const char *name, int min_np, int want_exact, NSEEL_PPPROC pproc, void *ctx, EEL_F(NSEEL_CGEN_CALL *fptr)(void *, void *, INT_PTR, EEL_F **), eel_function_table *destination)
Definition nseel-compiler.c:734
void NSEEL_VM_SetFunctionValidator(NSEEL_VMCTX, const char *(*validateFunc)(const char *fn_name, void *user), void *user)
Definition nseel-compiler.c:5318
int NSEEL_code_geterror_flag(NSEEL_VMCTX ctx)
Definition nseel-compiler.c:5218
void NSEEL_quit()
Definition nseel-compiler.c:717
void NSEEL_VM_freeRAMIfCodeRequested(NSEEL_VMCTX)
Definition nseel-ram.c:56
int * NSEEL_getstats()
Definition nseel-compiler.c:165
void * NSEEL_VMCTX
Definition ns-eel.h:117
void NSEEL_VM_FreeGRAM(void **ufd)
Definition nseel-ram.c:415
void * NSEEL_CODEHANDLE
Definition ns-eel.h:118
int NSEEL_VM_wantfreeRAM(NSEEL_VMCTX ctx)
Definition nseel-ram.c:45
NSEEL_VMCTX NSEEL_VM_alloc()
Definition eel_import.h:9
int * NSEEL_code_getstats(NSEEL_CODEHANDLE code)
Definition nseel-compiler.c:5385
unsigned int NSEEL_RAM_limitmem
Definition nseel-ram.c:39
void NSEEL_HOSTSTUB_LeaveMutex()
Definition ysfx_api_eel.cpp:142
NSEEL_CODEHANDLE NSEEL_code_compile(NSEEL_VMCTX ctx, const char *code, int lineoffs)
Definition nseel-compiler.c:4514
void NSEEL_addfunctionex2(const char *name, int nparms, char *code_startaddr, int code_len, NSEEL_PPPROC pproc, void *fptr, void *fptr2, eel_function_table *destination)
Definition nseel-compiler.c:755
double * EEL_F_PTR
Definition ns-eel.h:39
void NSEEL_VM_clear_var_refcnts(NSEEL_VMCTX _ctx)
Definition nseel-compiler.c:5486
void NSEEL_HOSTSTUB_EnterMutex()
Definition ysfx_api_eel.cpp:138
int NSEEL_VM_get_var_refcnt(NSEEL_VMCTX _ctx, const char *name)
Definition nseel-compiler.c:5664
int NSEEL_VM_setramsize(NSEEL_VMCTX ctx, int maxent)
Definition nseel-compiler.c:5304
Definition ns-eel-int.h:182
struct functionType * list
Definition ns-eel.h:102
int list_size
Definition ns-eel.h:103
Definition eel_import.h:27
const char * str_start
Definition eel_import.h:29
struct eelStringSegmentRec * _next
Definition eel_import.h:28
int str_len
Definition eel_import.h:30
Definition ns-eel-int.h:252
intptr_t INT_PTR
Definition swell-types.h:42
#define void
Definition unzip.h:396
#define WDL_FIXALIGN
Definition wdltypes.h:85