private static bool prefixEquals( Language?lang, Script?script, IEnumerable <Variant>?variants, LanguageTag prefix, LanguageTag.Field checking) { if (checking.HasFlag(LanguageTag.Field.Language) && lang != prefix.Language) { return(false); } if (checking.HasFlag(LanguageTag.Field.Script) && script != prefix.Script) { return(false); } if (checking.HasFlag(LanguageTag.Field.Variants) && !variants.IsEquivalentTo(prefix.Variants)) { return(false); } return(true); }
public void Take(string tagSource, LanguageTag.Field fields, string expected) { Assert.That(LanguageTag.Parse(tagSource).Take(fields), Is.EqualTo(LanguageTag.Parse(expected))); }
public void TakeNone(string tagSource, LanguageTag.Field fields) { Assert.That(LanguageTag.Parse(tagSource).Take(fields), Is.EqualTo(new LanguageTag())); }
internal static bool IsSet(this LanguageTag.Field checking, LanguageTag.Field test) { return((checking & test) == test); }