/// <summary> /// Gets the dictionary. /// </summary> /// <param name="instance">The instance.</param> /// <returns>Dictionary<System.String, Tuple<JToken, T>>.</returns> private Dictionary <string, Tuple <JProperty, T> > GetDictionary(JsonBackedObjectBase instance) { Dictionary <string, Tuple <JProperty, T> > result; if (instance.TryGetValue(this, out result)) { return(result); } result = CreateDictionary(instance.JsonValue); instance.SetValue(this, result); return(result); }
/// <summary> /// Evals the specified instance. /// </summary> /// <param name="instance">The instance.</param> /// <returns>T.</returns> public T Eval(JsonBackedObjectBase instance) { T result; if (instance.TryGetValue(this, out result)) { return(result); } result = Eval(instance.JsonValue); instance.SetValue(this, result); return(result); }