Пример #1
0
        protected bool Dequeue(StackOrder order, out T element)
        {
            if (this.Count == 0)
            {
                element = default(T);
                return(false);
            }
            lock (this.syncRoot)
            {
                switch (order)
                {
                case StackOrder.Peek:
                {
                    element = this.bag.Peek();
                    break;
                }

                default:
                case StackOrder.Pop:
                {
                    element = this.bag.Pop();
                    break;
                }
                }
                this.onDequeue.Invoke(this, (StackQueueEventArgs)StackQueueEventArgs.Empty);
                return(element.Equals(default(T)) == false);
            }
        }
Пример #2
0
 private void Awake()
 {
     stack = GameObject.FindObjectOfType <StackOrder>();
 }