Esempio n. 1
0
        public static void lua_upvaluejoin(lua_State L, int fidx1, int n1,
                                           int fidx2, int n2)
        {
            LClosure f1    = null;
            LClosure null_ = null;    //FIXME:added
            UpValRef up1   = getupvalref(L, fidx1, n1, ref f1);
            UpValRef up2   = getupvalref(L, fidx2, n2, ref null_);

            up1.set(up2.get());
            luaC_objbarrier(L, f1, up2.get());
        }
Esempio n. 2
0
        public static void lua_upvaluejoin(lua_State L, int fidx1, int n1,
                                           int fidx2, int n2)
        {
            Closure f1 = null;

            Closure[] f1Ref = new Closure[] { f1 };     //FIXME:added
            UpValRef  up1   = getupvalref(L, fidx1, n1, f1Ref);

            f1 = f1Ref[0];       //FIXME:added
            UpValRef up2 = getupvalref(L, fidx2, n2, null);

            up1.set(up2.get());
            luaC_objbarrier(L, f1, up2.get());
        }
Esempio n. 3
0
        public static void lua_upvaluejoin(lua_State L, int fidx1, int n1,
                                           int fidx2, int n2)
        {
            LClosure f1    = null;
            LClosure null_ = null;    //FIXME:added
            UpValRef up1   = getupvalref(L, fidx1, n1, ref f1);
            UpValRef up2   = getupvalref(L, fidx2, n2, ref null_);

            luaC_upvdeccount(L, up1.get());
            up1.set(up2.get());
            up1.get().refcount++;
            if (upisopen(up1.get()))
            {
                up1.get().u.open.touched = 1;
            }
            luaC_upvalbarrier(L, up1.get());
        }