MCPcopy Create free account
hub / github.com/F-Stack/f-stack / luaK_goiffalse

Function luaK_goiffalse

freebsd/contrib/openzfs/module/lua/lcode.c:643–663  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

641
642
643void luaK_goiffalse (FuncState *fs, expdesc *e) {
644 int pc; /* pc of last jump */
645 luaK_dischargevars(fs, e);
646 switch (e->k) {
647 case VJMP: {
648 pc = e->u.info;
649 break;
650 }
651 case VNIL: case VFALSE: {
652 pc = NO_JUMP; /* always false; do nothing */
653 break;
654 }
655 default: {
656 pc = jumponcond(fs, e, 1);
657 break;
658 }
659 }
660 luaK_concat(fs, &e->t, pc); /* insert last jump in `t' list */
661 luaK_patchtohere(fs, e->f);
662 e->f = NO_JUMP;
663}
664
665
666static void codenot (FuncState *fs, expdesc *e) {

Callers 2

test_then_blockFunction · 0.70
luaK_infixFunction · 0.70

Calls 4

luaK_dischargevarsFunction · 0.70
jumponcondFunction · 0.70
luaK_concatFunction · 0.70
luaK_patchtohereFunction · 0.70

Tested by 1

test_then_blockFunction · 0.56