public static MatchPredicateStrategy instance() {
        return INSTANCE;
    }
{@code MatchWhereStrategy} will fold any post-{@code where()} step that maintains a traversal constraint into
{@code match()}. {@link MatchStep} is intelligent with traversal constraint applications and thus, can more
efficiently use the constraint of {@link WhereTraversalStep} or {@link WherePredicateStep}.

@author Marko A. Rodriguez (http://markorodriguez.com)
@example <pre>
__.match(a,b).where(c)            // is replaced by __.match(a,b,c)
__.match(a,b).select().where(c)   // is replaced by __.match(a,b,c).select()
</pre>
gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/strategy/optimization/MatchPredicateStrategy.java