MCPcopy Create free account
hub / github.com/EmmyLua/EmmyLuaDebugger / suffixedexp

Function suffixedexp

third-party/lua-5.5.0/src/lparser.c:1217–1251  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1215
1216
1217static void suffixedexp (LexState *ls, expdesc *v) {
1218 /* suffixedexp ->
1219 primaryexp { '.' NAME | '[' exp ']' | ':' NAME funcargs | funcargs } */
1220 FuncState *fs = ls->fs;
1221 primaryexp(ls, v);
1222 for (;;) {
1223 switch (ls->t.token) {
1224 case '.': { /* fieldsel */
1225 fieldsel(ls, v);
1226 break;
1227 }
1228 case '[': { /* '[' exp ']' */
1229 expdesc key;
1230 luaK_exp2anyregup(fs, v);
1231 yindex(ls, &key);
1232 luaK_indexed(fs, v, &key);
1233 break;
1234 }
1235 case ':': { /* ':' NAME funcargs */
1236 expdesc key;
1237 luaX_next(ls);
1238 codename(ls, &key);
1239 luaK_self(fs, v, &key);
1240 funcargs(ls, v);
1241 break;
1242 }
1243 case '(': case TK_STRING: case '{' /*}*/: { /* funcargs */
1244 luaK_exp2nextreg(fs, v);
1245 funcargs(ls, v);
1246 break;
1247 }
1248 default: return;
1249 }
1250 }
1251}
1252
1253
1254static void simpleexp (LexState *ls, expdesc *v) {

Callers 3

simpleexpFunction · 0.70
restassignFunction · 0.70
exprstatFunction · 0.70

Calls 10

primaryexpFunction · 0.70
fieldselFunction · 0.70
luaK_exp2anyregupFunction · 0.70
yindexFunction · 0.70
luaK_indexedFunction · 0.70
luaX_nextFunction · 0.70
codenameFunction · 0.70
luaK_selfFunction · 0.70
funcargsFunction · 0.70
luaK_exp2nextregFunction · 0.70

Tested by

no test coverage detected