AjScript.Interpreter.Parser.ParseForInCommand C# (CSharp) Метод

ParseForInCommand() приватный Метод

private ParseForInCommand ( ) : ICommand
Результат ICommand
        private ICommand ParseForInCommand()
        {
            string name = this.ParseName();
            bool isvar = false;

            if (name == "var")
            {
                name = this.ParseName();
                isvar = true;
            }

            this.Parse(TokenType.Name, "in");
            IExpression values = this.ParseExpression();
            this.Parse(TokenType.Delimiter, ")");
            ICommand command = this.ParseCommand();

            ICommand forcmd = new ForEachCommand(name, values, command);

            if (!isvar)
                return forcmd;

            // TODO review if var command should be hoisted
            ICommand cmds = new CompositeCommand(new List<ICommand>() { new VarCommand(name), forcmd });

            return cmds;
        }