public NamedValue(string name, IValueToken value) { Tokens.Add(new AtomToken(name)); Tokens.Add(new CommaToken()); Tokens.Add(new WhitespaceToken(" ")); Tokens.Add((ParserToken) value); }
public void AddValue(IValueToken valueToken) { if (valueToken is ValueToken value) { this.valueToken = value; } else { throw new ArgumentException(); } }
public void AddValue(IValueToken valueToken) { if (valueToken is ValuesGroupToken group) { values.AddRange(group.Tokens.OfType <ValueToken>()); } else { values.Add(valueToken as ValueToken); } }
public static bool Available(List <IValueToken> tokens, IValueToken token) { if (!tokens.Any()) { return(true); } if (token.MutuallyExclusive) { return(false); } return(!tokens.Any(x => x.MutuallyExclusive && x.MutuallyExclusiveFlags.ContainsAny(token.MutuallyExclusiveFlags))); }
public CorrectValueRuleNodeState( VerifiableMemberContract contract, IGroupedValueToken groupedToken, IValueToken currentTokenPtr, ConditionOps implicitNextOps = ConditionOps.Break ) { _contract = contract; _rootNode = groupedToken; _workingNode = groupedToken; _currentTokenPtr = currentTokenPtr; _nextOps = implicitNextOps; }
public void AddValue(IValueToken token) { var info = typeInfo.GetValueInfoAt(usedValuesNumber) ?? typeInfo.Values.Last(); if (!info.IsCollection || assignedValues.Last() is CollectionParser) { assignedValues.Add(new SingleValueParser(info, (IValueConverter)info.ChooseConverter(convertersFactory))); } else { assignedValues.Add(new CollectionParser(info, (CollectionConverter)info.ChooseConverter(convertersFactory))); } assignedValues.Last().AddValue(token); usedValuesNumber++; }
protected void HandleValue(IValueToken token) { if (builder.LastOption?.AcceptsValue ?? false) { builder.LastOption.AddValue(token); } else if (builder.AwaitsValue) { builder.AddValue(token); } else { throw new ArgumentException("This type does not accept any more values."); } }
public UnknownTokenValueException(IValueToken token) : base($"Unknown value `{token.Value}`", token.CharAt) { }
public AssignedValueToken(IOptionToken option, IValueToken value) { Option = option; Value = value; }