public default GraphTraversal<S, Edge> mergeE(final Traversal<?, Map<Object, Object>> searchCreate) {
        this.asAdmin().getGremlinLang().addStep(Symbols.mergeE, searchCreate);

        final MergeEdgeStep<S> step = null == searchCreate ? new MergeEdgeStep(this.asAdmin(), false,  (Map) null) :
                new MergeEdgeStep(this.asAdmin(), false, searchCreate.asAdmin());
        return this.asAdmin().addStep(step);
    }
Spawns a {@link GraphTraversal} by doing a merge (i.e. upsert) style operation for an {@link Edge} using a
{@code Map} as an argument.

@param searchCreate This {@code Map} can have a key of {@link T} {@link Direction} or a {@code String}.
@since 3.6.0
gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversal.java