using System;
using Newtonsoft.Json.Linq;
namespace StardewModdingAPI.Toolkit.Serialization
{
/// Provides extension methods for parsing JSON.
public static class JsonExtensions
{
/// Get a JSON field value from a case-insensitive field name. This will check for an exact match first, then search without case sensitivity.
/// The value type.
/// The JSON object to search.
/// The field name.
public static T ValueIgnoreCase(this JObject obj, string fieldName)
{
JToken token = obj.GetValue(fieldName, StringComparison.InvariantCultureIgnoreCase);
return token != null
? token.Value()
: default(T);
}
}
}