public override IEnumerable <JToken> ExecuteFilter( JToken root, IEnumerable <JToken> current, JsonSelectSettings?settings ) { foreach (JToken t in current) { if (t is JContainer c) { foreach (JToken d in c.DescendantsAndSelf()) { if (Expression.IsMatch(root, d, settings)) { yield return(d); } } } else { if (Expression.IsMatch(root, t, settings)) { yield return(t); } } } }
public override IEnumerable <JToken> ExecuteFilter(JToken root, IEnumerable <JToken> current, JsonSelectSettings?settings) { foreach (JToken t in current) { foreach (JToken v in t) { if (Expression.IsMatch(root, v, settings)) { yield return(v); } } } }
public override IEnumerable <JToken> ExecuteFilter(JToken root, IEnumerable <JToken> current, bool errorWhenNoMatch) { foreach (JToken t in current) { foreach (JToken v in t) { if (Expression.IsMatch(root, v)) { yield return(v); } } } }
public override IEnumerable <JToken> ExecuteFilter(JToken root, IEnumerable <JToken> current, bool errorWhenNoMatch) { foreach (JToken t in current) { if (t is JContainer c) { foreach (JToken d in c.DescendantsAndSelf()) { if (Expression.IsMatch(root, d)) { yield return(d); } } } else { if (Expression.IsMatch(root, t)) { yield return(t); } } } }