コード例 #1
0
        private IEnumerable <IArgumentToken> Tokenize(IEnumerable <string> args)
        {
            ChainTokenizer commandTokenizer = tokenizer as ChainTokenizer;

            foreach (var str in args)
            {
                var token = tokenizer.TokenizeArgument(str);
                if (token is CommandToken)
                {
                    tokenizer = commandTokenizer.Next;
                }
                yield return(token);
            }
            tokenizer = commandTokenizer;
        }
コード例 #2
0
 internal Parser(IArgumentTokenizer tokenizer, ITokensParserFactory typeParserFactory)
 {
     this.tokenizer         = tokenizer ?? throw new ArgumentNullException(nameof(tokenizer));
     this.typeParserFactory = typeParserFactory ?? throw new ArgumentNullException(nameof(typeParserFactory));
 }
コード例 #3
0
 public AssignedValueTokenizer(char[] separators, ChainTokenizer optionTokenizer, IArgumentTokenizer valueTokenizer)
 {
     this.separators      = separators ?? throw new ArgumentNullException(nameof(separators));
     this.optionTokenizer = optionTokenizer ?? throw new ArgumentNullException(nameof(optionTokenizer));
     this.valueTokenizer  = valueTokenizer ?? throw new ArgumentNullException(nameof(valueTokenizer));
 }