in src/common/details/named_values/parsers/named_value_token_parser_helpers.cs [88:118]
public static bool ValueMatchesValidValue(string? validValues, string? peekToken, string? peekTokenValue, bool skipAtAt = false)
{
if (peekToken == null) return false;
if (peekTokenValue == null) return false;
if (validValues == null) return true;
bool checkAtAt = validValues == "@@";
if (checkAtAt && skipAtAt) return false;
bool atAtOk = !string.IsNullOrEmpty(peekToken);
if (checkAtAt) return atAtOk;
bool checkAt = validValues.Length <= 3 && validValues.Contains("@");
bool atOk = peekToken.StartsWith("@") || (peekToken.StartsWith("=@") && !peekTokenValue.StartsWith("=@"));
if (checkAt && atOk) return true;
bool checkSemi = validValues.Length <= 3 && validValues.Contains(";");
bool semiOk = peekToken.Contains(";");
if (checkSemi && semiOk) return true;
bool checkTab = validValues.Length <= 3 && validValues.Contains("\t");
bool semiTab = peekToken.Contains("\t");
if (checkTab && semiTab) return true;
foreach (var validValue in validValues.Split(';'))
{
if (peekTokenValue == validValue) return true;
}
return false;
}