Lines Matching refs:ins

95 static int mcp_inspector_flag_i_g(lua_State *L, int tidx, int sc, struct mcp_inspector *ins) {  in mcp_inspector_flag_i_g()  argument
96 struct mcp_ins_step *s = &ins->steps[sc]; in mcp_inspector_flag_i_g()
125 static int mcp_inspector_string_i_g(lua_State *L, int tidx, int sc, struct mcp_inspector *ins) { in mcp_inspector_string_i_g() argument
126 struct mcp_ins_step *s = &ins->steps[sc]; in mcp_inspector_string_i_g()
133 c->str = ins->aused; in mcp_inspector_string_i_g()
135 char *a = ins->arena + ins->aused; in mcp_inspector_string_i_g()
137 ins->aused += len; in mcp_inspector_string_i_g()
170 static int mcp_inspector_sepkey_i(lua_State *L, int tidx, int sc, struct mcp_inspector *ins) { in mcp_inspector_sepkey_i() argument
171 struct mcp_ins_step *s = &ins->steps[sc]; in mcp_inspector_sepkey_i()
202 static int mcp_inspector_sepkey_r(lua_State *L, struct mcp_inspector *ins, struct mcp_ins_step *s, … in mcp_inspector_sepkey_r() argument
266 static int mcp_inspector_keybegin_r(lua_State *L, struct mcp_inspector *ins, struct mcp_ins_step *s… in mcp_inspector_keybegin_r() argument
272 const char *str = ins->arena + c->str; in mcp_inspector_keybegin_r()
283 static int mcp_inspector_keyis_r(lua_State *L, struct mcp_inspector *ins, struct mcp_ins_step *s, v… in mcp_inspector_keyis_r() argument
289 const char *str = ins->arena + c->str; in mcp_inspector_keyis_r()
300 static int mcp_inspector_hasflag_r(lua_State *L, struct mcp_inspector *ins, struct mcp_ins_step *s,… in mcp_inspector_hasflag_r() argument
302 if (ins->type == INS_REQ) { in mcp_inspector_hasflag_r()
330 static int mcp_inspector_flagtoken_r(lua_State *L, struct mcp_inspector *ins, struct mcp_ins_step *… in mcp_inspector_flagtoken_r() argument
332 if (ins->type == INS_REQ) { in mcp_inspector_flagtoken_r()
364 static int mcp_inspector_flagint_r(lua_State *L, struct mcp_inspector *ins, struct mcp_ins_step *s,… in mcp_inspector_flagint_r() argument
366 if (ins->type == INS_REQ) { in mcp_inspector_flagint_r()
407 static int mcp_inspector_flagstr_i(lua_State *L, int tidx, int sc, struct mcp_inspector *ins) { in mcp_inspector_flagstr_i() argument
410 struct mcp_ins_step *s = &ins->steps[sc]; in mcp_inspector_flagstr_i()
423 c->str = ins->aused; in mcp_inspector_flagstr_i()
425 char *a = ins->arena + ins->aused; in mcp_inspector_flagstr_i()
427 ins->aused += len; in mcp_inspector_flagstr_i()
435 static int mcp_inspector_flagis_r(lua_State *L, struct mcp_inspector *ins, struct mcp_ins_step *s, … in mcp_inspector_flagis_r() argument
437 const char *str = ins->arena + c->str; in mcp_inspector_flagis_r()
438 if (ins->type == INS_REQ) { in mcp_inspector_flagis_r()
479 typedef int (*mcp_ins_i)(lua_State *L, int tidx, int sc, struct mcp_inspector *ins);
480 typedef int (*mcp_ins_r)(lua_State *L, struct mcp_inspector *ins, struct mcp_ins_step *s, void *arg…
553 struct mcp_inspector *ins = lua_newuserdatauv(L, sizeof(*ins) + extsize, 1); in mcp_inspector_new() local
554 memset(ins, 0, sizeof(*ins)); in mcp_inspector_new()
556 ins->arena = malloc(size); in mcp_inspector_new()
557 if (ins->arena == NULL) { in mcp_inspector_new()
572 ins->type = type; in mcp_inspector_new()
580 ins->steps[scount].type = st; in mcp_inspector_new()
581 mcp_ins_entries[st].i(L, x, scount, ins); in mcp_inspector_new()
582 ins->rcount += mcp_ins_entries[st].n; in mcp_inspector_new()
588 if (size != ins->aused) { in mcp_inspector_new()
591 ins->scount = scount; in mcp_inspector_new()
596 static int mcp_ins_run(lua_State *L, struct mcp_inspector *ins, void *arg) { in mcp_ins_run() argument
599 for (int x = 0; x < ins->scount; x++) { in mcp_ins_run()
600 struct mcp_ins_step *s = &ins->steps[x]; in mcp_ins_run()
602 ret += mcp_ins_entries[s->type].r(L, ins, s, arg); in mcp_ins_run()
620 struct mcp_inspector *ins = lua_touserdata(L, 1); in mcplib_inspector_gc() local
622 if (ins->arena) { in mcplib_inspector_gc()
623 free(ins->arena); in mcplib_inspector_gc()
624 ins->arena = NULL; in mcplib_inspector_gc()
627 for (int x = 0; x < ins->scount; x++) { in mcplib_inspector_gc()
628 struct mcp_ins_step *s = &ins->steps[x]; in mcplib_inspector_gc()
658 struct mcp_inspector *ins = lua_touserdata(L, 1); in mcplib_inspector_call() local
660 if (lua_checkstack(L, ins->rcount) == 0) { in mcplib_inspector_call()
675 return mcp_ins_run(L, ins, arg); in mcplib_inspector_call()