MCPcopy Create free account
hub / github.com/CppCXY/EmmyLuaCodeStyle / luaK_self

Function luaK_self

3rd/lua-5.4.3/src/lcode.c:1067–1077  ·  view source on GitHub ↗

** Emit SELF instruction (convert expression 'e' into 'e:key(e,'). */

Source from the content-addressed store, hash-verified

1065** Emit SELF instruction (convert expression 'e' into 'e:key(e,').
1066*/
1067void luaK_self (FuncState *fs, expdesc *e, expdesc *key) {
1068 int ereg;
1069 luaK_exp2anyreg(fs, e);
1070 ereg = e->u.info; /* register where 'e' was placed */
1071 freeexp(fs, e);
1072 e->u.info = fs->freereg; /* base register for op_self */
1073 e->k = VNONRELOC; /* self expression has a fixed register */
1074 luaK_reserveregs(fs, 2); /* function and 'self' produced by op_self */
1075 codeABRK(fs, OP_SELF, e->u.info, ereg, key);
1076 freeexp(fs, key);
1077}
1078
1079
1080/*

Callers 1

suffixedexpFunction · 0.85

Calls 4

luaK_exp2anyregFunction · 0.85
freeexpFunction · 0.85
luaK_reserveregsFunction · 0.85
codeABRKFunction · 0.85

Tested by

no test coverage detected