AjScript.Commands.SetArrayCommand.Execute C# (CSharp) Метод

Execute() публичный Метод

public Execute ( IContext context ) : void
context IContext
Результат void
        public void Execute(IContext context)
        {
            object value = this.expression.Evaluate(context);
            object[] indexes = null;
            List<object> values = new List<object>();

            foreach (IExpression expression in this.arguments)
                values.Add(expression.Evaluate(context));

            indexes = values.ToArray();

            object obj = null;

            if (ObjectUtilities.IsNumber(indexes[0]))
                obj = ExpressionUtilities.ResolveToList(this.leftValue, context);
            else if (indexes.Length == 1)
            {
                IObject iobj = (IObject)ExpressionUtilities.ResolveToObject(this.leftValue, context);
                iobj.SetValue(indexes[0].ToString(), value);
                return;
            }
            else
                obj = ExpressionUtilities.ResolveToDictionary(this.leftValue, context);

            ObjectUtilities.SetIndexedValue(obj, indexes, value);
        }