Example #1
0
        public StckInternal <T> Reverse()
        {
            var s = new StckInternal <T>();

            foreach (var item in this)
            {
                s = s.Push(item);
            }
            return(s);
        }
Example #2
0
 /// <summary>
 /// Ctor that takes an initial state as a Lst T
 /// </summary>
 internal StckInternal(Lst <T> initial)
 {
     tail = new StckInternal <T>();
     foreach (var item in initial)
     {
         value = item;
         tail  = tail.Push(item);
         Count++;
     }
     tail = tail.Pop();
 }
Example #3
0
 /// <summary>
 /// Ctor that takes an initial state as an IEnumerable T
 /// </summary>
 public StckInternal(IEnumerable <T> initial)
 {
     tail = new StckInternal <T>();
     foreach (var item in initial)
     {
         value = item;
         tail  = tail.Push(item);
         Count++;
     }
     tail = tail.Pop();
 }
Example #4
0
        internal QueInternal(IEnumerable <T> items)
        {
            var q = new QueInternal <T>();

            foreach (var item in items)
            {
                q = q.Enqueue(item);
            }
            forward     = q.forward;
            backward    = q.backward;
            backwardRev = q.backwardRev;
        }
Example #5
0
 /// <summary>
 /// Ctor that takes an initial state as an IEnumerable T
 /// </summary>
 public Stck(IEnumerable <T> initial)
 {
     value         = new StckInternal <T>(initial);
     this.hashCode = 0;
 }
Example #6
0
 /// <summary>
 /// Default ctor
 /// </summary>
 internal Stck(StckInternal <T> value)
 {
     this.value    = value;
     this.hashCode = 0;
 }
Example #7
0
 private QueInternal(StckInternal <T> f, StckInternal <T> b)
 {
     forward  = f;
     backward = b;
 }
Example #8
0
 internal QueInternal()
 {
     forward  = StckInternal <T> .Empty;
     backward = StckInternal <T> .Empty;
 }
Example #9
0
 /// <summary>
 /// Ctor for Push
 /// </summary>
 /// <param name="value"></param>
 /// <param name="tail"></param>
 internal StckInternal(T value, StckInternal <T> tail)
 {
     Count      = tail.Count + 1;
     this.tail  = tail;
     this.value = value;
 }
Example #10
0
 /// <summary>
 /// Ctor that takes an initial state as an IEnumerable T
 /// </summary>
 public Stck(IEnumerable <A> initial)
 {
     value         = initial.Any() ? new StckInternal <A>(initial) : StckInternal <A> .Empty;
     this.hashCode = 0;
 }
Example #11
0
 /// <summary>
 /// Default ctor
 /// </summary>
 internal Stck(StckInternal <A> value)
 {
     this.value = value;
 }