ref: 18b192b8aa8dd3779d33ead2b5d8531a43389cd4
dir: /jsstate.c/
#include "js.h" #include "jsobject.h" #include "jsstate.h" js_State *js_newstate(void) { js_State *J = malloc(sizeof *J); memset(J, 0, sizeof(*J)); J->global = js_newobject(J, JS_COBJECT); J->E = js_newenvironment(J, NULL, J->global); return J; } void js_close(js_State *J) { free(J->buf.text); free(J); } int js_error(js_State *J, const char *fmt, ...) { va_list ap; fprintf(stderr, "error: "); va_start(ap, fmt); vfprintf(stderr, fmt, ap); va_end(ap); fprintf(stderr, "\n"); return 0; }