public EnumMemberParser(EnumFormat format, [NotNull] EnumCache <TInt, TIntProvider> enumCache) { _formatValueMap = new Dictionary <string, EnumMember <TInt, TIntProvider> >(enumCache.GetMemberCount(EnumMemberSelection.All), StringComparer.Ordinal); foreach (EnumMember <TInt, TIntProvider> member in enumCache.GetMembers(EnumMemberSelection.All)) { string formattedValue = member.AsString(format); if (formattedValue != null) { _formatValueMap[formattedValue] = member; } } }
public IEnumerable <EnumMember> GetMembers(EnumMemberSelection selection) { return(SelectEnumMembers(_cache.GetMembers(selection))); }