Esempio n. 1
0
        private static int BPairs( Thread l )
        {
            var val = l[1];
            var mt = GetMetatableImp( val );

            Value mmt;
            if( mt != null && mt.TryGetValue( Literals.TagMethod_Pairs, out mmt ) )
            {
                l.StackTop = 1;
                l.Call( (Callable)mmt, 1, 3 );
            }
            else
            {
                l.SetStack( (Callable)new StableNext(),
                    val, Value.Nil );
            }

            return 3;
        }