Beispiel #1
0
        public override void VisitNewListInstruction(NewListIns newList, Stack <Expression> expressionStack)
        {
            List <Expression> items = new List <Expression>(newList.ItemCount);

            for (int i = 0; i < items.Capacity; i++)
            {
                items.Add(expressionStack.Pop());
            }
            items.Reverse();

            if (newList.IsArgumentList)
            {
                expressionStack.Push(new ArgumentListExpression(items));
            }
            else
            {
                expressionStack.Push(new ListExpression(items));
            }
        }
 public virtual void VisitNewListInstruction(NewListIns newList) => Default(newList);