Ejemplo n.º 1
0
        public override ElaValue Tail()
        {
            if (thunk != null)
            {
                InternalNext = thunk.Force().Ref as ElaList;
                thunk = null;
            }

            return new ElaValue(InternalNext);
        }
Ejemplo n.º 2
0
        public override ElaValue Tail()
        {
            if (thunk != null)
            {
                InternalNext = thunk.Force().Ref as ElaList;
                thunk        = null;
            }

            return(new ElaValue(InternalNext));
        }
Ejemplo n.º 3
0
        protected internal override ElaValue Tail(ExecutionContext ctx)
        {
            if (thunk != null)
            {
                InternalNext = thunk.Force(ctx).Ref as ElaList;

                if (InternalNext == null)
                {
                    ctx.Fail("Invalid lazy list definition.");
                    return(Default());
                }

                thunk = null;
            }

            return(new ElaValue(InternalNext));
        }
Ejemplo n.º 4
0
 public ElaLazyList(ElaLazy next, ElaValue value) : this((ElaLazyList)null, value)
 {
     this.thunk = next;
 }
Ejemplo n.º 5
0
 public ElaLazyList(ElaLazy next, object value) : this(next, ElaValue.FromObject(value))
 {
 }
Ejemplo n.º 6
0
        protected internal override ElaValue Tail(ExecutionContext ctx)
        {
            if (thunk != null)
            {
                InternalNext = thunk.Force(ctx).Ref as ElaList;

                if (InternalNext == null)
                {
                    ctx.Fail("Invalid lazy list definition.");
                    return Default();
                }

                thunk = null;
            }

            return new ElaValue(InternalNext);
        }
Ejemplo n.º 7
0
 public ElaLazyList(ElaLazy next, ElaValue value)
     : this((ElaLazyList)null, value)
 {
     this.thunk = next;
 }
Ejemplo n.º 8
0
 public ElaLazyList(ElaLazy next, object value)
     : this(next, ElaValue.FromObject(value))
 {
 }