protected virtual IAcceptInputTransition <T> ActivateRegexDFATransitionFromAccreditedSet(RangeSet <T> rangeSet) { if (rangeSet == null) { throw new ArgumentNullException(nameof(rangeSet)); } return(BasicRegexFATransition <T> .Adapt( new RangeSetRegexFATransition <T, BasicRegexDFAState <T> >(rangeSet) )); }
protected override IAcceptInputTransition <T> ActivateRegexNFATransitionFromRegexRange(RegexRange <T> regex) { if (regex == null) { throw new ArgumentNullException(nameof(regex)); } if (this.AccreditedSet.Any(t => regex.Condition(t))) { return(BasicRegexFATransition <T> .Adapt(new RangeSetRegexFATransition <T, BasicRegexNFAState <T> >(new RangeSet <T>(new[] { (IRange <T>)regex }, this.rangeSet.RangeInfo)))); } else { return(new BasicRegexFATransition <T>(t => false)); } }