public override JmesPathArgument Project(JmesPathArgument argument) { if (argument.IsProjection) { argument = argument.AsJToken(); } var array = argument.Token as JArray; if (array == null) { return(null); } var items = new List <JmesPathArgument>(); foreach (var item in array) { var result = expression_.Transform(item); if (!JmesPathArgument.IsFalse(result)) { items.Add(item); } } return(new JmesPathArgument(items)); }
protected override JmesPathArgument Transform(JToken json) { return(expression_.Transform(json)); }
protected override JmesPathArgument Transform(JToken json) { var token = left_.Transform(json); return(token == JmesPathArgument.Null ? token : right_.Transform(token)); }