void FillPhases(SearchStringParseResult result) { SearchModificator modificator = SearchModificator.None; string modificatorStr = string.Empty; switch (phaseState) { case PhaseState.Include: modificator = SearchModificator.Include; modificatorStr = settings.IncludeModificator.ToString(); break; case PhaseState.Exclude: modificator = SearchModificator.Exclude; modificatorStr = settings.ExcludeModificator.ToString(); break; } if (modificator != SearchModificator.None) { result.PhaseInfos.Add(new PhaseInfo(modificatorStr, modificator)); } result.PhaseInfos.AddRange(GetFieldPhase()); result.PhaseInfos.AddRange(GetPhase(modificator)); if (hasSpace) { result.PhaseInfos.Add(new PhaseInfo(settings.PhaseSeparator.ToString())); } }
public PhaseInfo(string text, SearchModificator modificator = SearchModificator.None, bool grouped = false) { if (String.IsNullOrEmpty(text)) { throw new ArgumentNullException(); } Text = text; Modificator = modificator; Grouped = grouped; }
List <PhaseInfo> GetPhase(SearchModificator modificator) { var result = new List <PhaseInfo>(); if (groupState == GroupingState.Finished) { result.Add(new PhaseInfo(settings.GroupModificator.ToString(), SearchModificator.Group)); } if (phase != string.Empty) { result.Add(new PhaseInfo(phase, modificator, groupState == GroupingState.Finished)); } if (groupState == GroupingState.Finished) { result.Add(new PhaseInfo(settings.GroupModificator.ToString(), SearchModificator.Group)); } return(result); }