public static string AsText(this BareKeyOrStringValueSyntax bareKeyOrString) { if (bareKeyOrString is BareKeySyntax bareKey) { return(AsText(bareKey)); } return(AsText((StringValueSyntax)bareKeyOrString)); }
private string GetStringFromBasic(BareKeyOrStringValueSyntax value) { if (value is BareKeySyntax basicKey) { return(basicKey.Key.Text); } return(((StringValueSyntax)value).Value); }
private string GetStringFromBasic(BareKeyOrStringValueSyntax value) { switch (value) { case BareKeySyntax basicKey: return(basicKey.Key.Text); case StringValueSyntax stringValue: return(stringValue.Value); default: throw new InvalidOperationException("Unknown type of BareKeyOrStringValueSyntax"); } }
/// <summary> /// $hack(jefflill): This extension returns the actual string name for a <see cref="BareKeyOrStringValueSyntax"/>. /// </summary> /// <param name="key">The source key.</param> /// <returns>The key's string name.</returns> public static string GetName(this BareKeyOrStringValueSyntax key) => Normalize(key.ToString());