AjTalk.Model.ModelParser.ParseBlockParameters C# (CSharp) Méthode

ParseBlockParameters() private méthode

private ParseBlockParameters ( ) : IList
Résultat IList
        private IList<string> ParseBlockParameters()
        {
            IList<string> parameterNames = new List<string>();

            Token token = this.NextToken();

            while (token != null && (token.Type == TokenType.Parameter || (token.Type == TokenType.Operator && token.Value == ":")))
            {
                // TODO improve parameter lexer
                if (token.Type == TokenType.Operator)
                    parameterNames.Add(this.ParseName());
                else
                    parameterNames.Add(token.Value);
                token = this.NextToken();
            }

            if (parameterNames.Count == 0)
                this.PushToken(token);
            else if (token == null || token.Type != TokenType.Punctuation || token.Value != "|")
                throw new ParserException("Expected '|'");

            return parameterNames;
        }