public SearchStringParseResult Parse(string searchText, SearchStringParseSettings settings) { SearchStringParseResult result = new SearchStringParseResult(); if (searchText == null) { return(result); } this.settings = settings; state = new ParsingState(searchText, settings); while (state.MoveNext()) { switch (Add(state.CurrentChar.Value)) { case SearchStringParseState.Completed: ApplyAndFlush(result); break; } } FlushAll(); return(result); }
public ParsingState(string searchString, SearchStringParseSettings settings) { this.searchString = searchString; Settings = settings; }