@ Override public JsonNode visit ( JmesPathSubExpression subExpression , JsonNode input ) throws InvalidTypeException { JsonNode prelimnaryResult = subExpression . getExpressions ( ) . get ( 0 ) . accept ( this , input ) ; for ( int i = 1 ; i < subExpression . getExpressions ( ) . size ( ) ; i ++ ) { prelimnaryResult = subExpression . getExpressions ( ) . get ( i ) . accept ( this , prelimnaryResult ) ; } return prelimnaryResult ; }
Evaluates a subexpression by evaluating the expression on the left with the original JSON document and then evaluating the expression on the right with the result of the left expression evaluation .