public static string NameOrEmpty(this ITranslatedNamedGetter getter)
 {
     if (getter.Name == null || !getter.Name !.TryLookup(Language.English, out var name) || name == null)
     {
         return("");
     }
     return(name !);
 }
 public static string NameOrThrow(this ITranslatedNamedGetter getter)
 {
     if (getter.Name == null || !getter.Name !.TryLookup(Language.English, out var name) || name == null)
     {
         throw new InvalidDataException($"Cannot get English name from {getter}");
     }
     return(name !);
 }
        private bool CheckExclusion(ExclusionType ex, IReadOnlyCollection <Regex> patterns, ITranslatedNamedGetter a)
        {
            if (ex == ExclusionType.Name || ex == ExclusionType.Full)
            {
                if (a.Name == null || !a.Name !.TryLookup(Language.English, out var name))
                {
                    return(false);
                }
                return(CheckExclusionName(patterns, name));
            }

            return(CheckExclusionMajorRecord(ex, patterns, (IMajorRecordGetter)a));
        }