AjTalk.Model.ArrayExpression.AsObjectArray C# (CSharp) Method

AsObjectArray() public method

public AsObjectArray ( ) : object[]
return object[]
        public object[] AsObjectArray()
        {
            IList<object> objects = new List<object>();

            foreach (var expr in this.expressions)
            {
                if (expr is ConstantExpression)
                    objects.Add(((ConstantExpression)expr).Value);
                else if (expr is SymbolExpression)
                    objects.Add(((SymbolExpression)expr).Symbol);
                else if (expr is VariableExpression)
                    objects.Add(((VariableExpression)expr).Name);
                else if (expr is ArrayExpression)
                    objects.Add(((ArrayExpression)expr).AsObjectArray());
                else
                    throw new InvalidOperationException();
            }

            return objects.ToArray();
        }

Usage Example

Ejemplo n.º 1
0
 public override void Visit(ArrayExpression expression)
 {
     this.block.CompileGetConstant(expression.AsObjectArray());
 }