internal bool ContainsRuleFlagForEntry(WordEntryDetail details) { foreach (var flag in items) { if (!flag.IsWildcard && details.ContainsFlag(flag)) { return(true); } } return(false); }
internal bool EntryContainsRuleFlags(WordEntryDetail details) { if (details != null && details.HasFlags) { foreach (var rule in items) { if (rule.ContainsRuleFlagForEntry(details)) { return(true); } } } return(false); }
public void Add(string word, WordEntryDetail detail) { var details = GetOrCreateDetailList(word); details.Add(detail); }
public WordEntryDetail Dedup(WordEntryDetail value) => value == null ? value : WordEntryDetailDeduper.GetEqualOrAdd(value);
public WordEntry(string word, WordEntryDetail detail) { Word = word ?? string.Empty; Detail = detail ?? WordEntryDetail.Default; }