class DefaultVertexTraversal extends AbstractVertexTraversal implements VertexTraversal {

    @Override
    public VertexTraversal hasLabel(String label) {
        Objects.requireNonNull(label, "label is required");
        return new DefaultVertexTraversal(supplier, flow.andThen(g -> g.hasLabel(label)), converter);
    }

      DefaultVertexTraversal(Supplier<GraphTraversal<?, ?>> supplier,
                           Function<GraphTraversal<?, ?>, GraphTraversal<Vertex, Vertex>> flow,
                           GraphConverter converter);

}