http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/5f327312/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/GraphTraversal.cs
----------------------------------------------------------------------
diff --git a/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/GraphTraversal.cs
b/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/GraphTraversal.cs
index 2493864..80fc46b 100644
--- a/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/GraphTraversal.cs
+++ b/gremlin-dotnet/src/Gremlin.Net/Process/Traversal/GraphTraversal.cs
@@ -65,8 +65,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the V step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , Vertex > V (params object[] args)
+ public GraphTraversal< S , Vertex > V (params object[]
vertexIdsOrElements)
{
+ var args = new List<object> { vertexIdsOrElements };
Bytecode.AddStep("V", args);
return Wrap< S , Vertex >(this);
}
@@ -74,8 +75,19 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the addE step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , Edge > AddE (params object[] args)
+ public GraphTraversal< S , Edge > AddE (string edgeLabel)
{
+ var args = new List<object> { edgeLabel };
+ Bytecode.AddStep("addE", args);
+ return Wrap< S , Edge >(this);
+ }
+
+ /// <summary>
+ /// Adds the addE step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , Edge > AddE (Direction direction, string
firstVertexKeyOrEdgeLabel, string edgeLabelOrSecondVertexKey, params object[]
propertyKeyValues)
+ {
+ var args = new List<object> { direction,
firstVertexKeyOrEdgeLabel, edgeLabelOrSecondVertexKey, propertyKeyValues };
Bytecode.AddStep("addE", args);
return Wrap< S , Edge >(this);
}
@@ -83,8 +95,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the addInE step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , Edge > AddInE (params object[] args)
+ public GraphTraversal< S , Edge > AddInE (string
firstVertexKeyOrEdgeLabel, string edgeLabelOrSecondVertexKey, params object[]
propertyKeyValues)
{
+ var args = new List<object> { firstVertexKeyOrEdgeLabel,
edgeLabelOrSecondVertexKey, propertyKeyValues };
Bytecode.AddStep("addInE", args);
return Wrap< S , Edge >(this);
}
@@ -92,8 +105,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the addOutE step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , Edge > AddOutE (params object[] args)
+ public GraphTraversal< S , Edge > AddOutE (string
firstVertexKeyOrEdgeLabel, string edgeLabelOrSecondVertexKey, params object[]
propertyKeyValues)
{
+ var args = new List<object> { firstVertexKeyOrEdgeLabel,
edgeLabelOrSecondVertexKey, propertyKeyValues };
Bytecode.AddStep("addOutE", args);
return Wrap< S , Edge >(this);
}
@@ -101,8 +115,29 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the addV step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , Vertex > AddV (params object[] args)
+ public GraphTraversal< S , Vertex > AddV (string vertexLabel)
+ {
+ var args = new List<object> { vertexLabel };
+ Bytecode.AddStep("addV", args);
+ return Wrap< S , Vertex >(this);
+ }
+
+ /// <summary>
+ /// Adds the addV step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , Vertex > AddV ()
+ {
+ var args = new List<object> { };
+ Bytecode.AddStep("addV", args);
+ return Wrap< S , Vertex >(this);
+ }
+
+ /// <summary>
+ /// Adds the addV step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , Vertex > AddV (params object[]
propertyKeyValues)
{
+ var args = new List<object> { propertyKeyValues };
Bytecode.AddStep("addV", args);
return Wrap< S , Vertex >(this);
}
@@ -110,8 +145,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the aggregate step to this <see
cref="GraphTraversal{SType, EType}" />.
/// </summary>
- public GraphTraversal< S , E > Aggregate (params object[] args)
+ public GraphTraversal< S , E > Aggregate (string sideEffectKey)
{
+ var args = new List<object> { sideEffectKey };
Bytecode.AddStep("aggregate", args);
return Wrap< S , E >(this);
}
@@ -119,8 +155,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the and step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > And (params object[] args)
+ public GraphTraversal< S , E > And (params ITraversal[] andTraversals)
{
+ var args = new List<object> { andTraversals };
Bytecode.AddStep("and", args);
return Wrap< S , E >(this);
}
@@ -128,8 +165,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the as step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > As (params object[] args)
+ public GraphTraversal< S , E > As (string stepLabel, params string[]
stepLabels)
{
+ var args = new List<object> { stepLabel, stepLabels };
Bytecode.AddStep("as", args);
return Wrap< S , E >(this);
}
@@ -137,8 +175,29 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the barrier step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > Barrier (params object[] args)
+ public GraphTraversal< S , E > Barrier (object barrierConsumer)
+ {
+ var args = new List<object> { barrierConsumer };
+ Bytecode.AddStep("barrier", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the barrier step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > Barrier ()
{
+ var args = new List<object> { };
+ Bytecode.AddStep("barrier", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the barrier step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > Barrier (int maxBarrierSize)
+ {
+ var args = new List<object> { maxBarrierSize };
Bytecode.AddStep("barrier", args);
return Wrap< S , E >(this);
}
@@ -146,8 +205,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the both step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , Vertex > Both (params object[] args)
+ public GraphTraversal< S , Vertex > Both (params string[] edgeLabels)
{
+ var args = new List<object> { edgeLabels };
Bytecode.AddStep("both", args);
return Wrap< S , Vertex >(this);
}
@@ -155,8 +215,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the bothE step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , Edge > BothE (params object[] args)
+ public GraphTraversal< S , Edge > BothE (params string[] edgeLabels)
{
+ var args = new List<object> { edgeLabels };
Bytecode.AddStep("bothE", args);
return Wrap< S , Edge >(this);
}
@@ -164,8 +225,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the bothV step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , Vertex > BothV (params object[] args)
+ public GraphTraversal< S , Vertex > BothV ()
{
+ var args = new List<object> { };
Bytecode.AddStep("bothV", args);
return Wrap< S , Vertex >(this);
}
@@ -173,17 +235,119 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the branch step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E2 > Branch<E2> (params object[] args)
+ public GraphTraversal< S , E2 > Branch<E2> (object function)
{
+ var args = new List<object> { function };
Bytecode.AddStep("branch", args);
return Wrap< S , E2 >(this);
}
/// <summary>
+ /// Adds the branch step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E2 > Branch<E2> (ITraversal branchTraversal)
+ {
+ var args = new List<object> { branchTraversal };
+ Bytecode.AddStep("branch", args);
+ return Wrap< S , E2 >(this);
+ }
+
+ /// <summary>
+ /// Adds the by step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > By (ITraversal traversal, object
comparator)
+ {
+ var args = new List<object> { traversal, comparator };
+ Bytecode.AddStep("by", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the by step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > By ()
+ {
+ var args = new List<object> { };
+ Bytecode.AddStep("by", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the by step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > By (object comparator)
+ {
+ var args = new List<object> { comparator };
+ Bytecode.AddStep("by", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the by step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > By (Order order)
+ {
+ var args = new List<object> { order };
+ Bytecode.AddStep("by", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the by step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > By (string key, object comparator)
+ {
+ var args = new List<object> { key, comparator };
+ Bytecode.AddStep("by", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the by step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > By (ITraversal traversal)
+ {
+ var args = new List<object> { traversal };
+ Bytecode.AddStep("by", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the by step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > By (object function, object comparator)
+ {
+ var args = new List<object> { function, comparator };
+ Bytecode.AddStep("by", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
/// Adds the by step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > By (params object[] args)
+ public GraphTraversal< S , E > By (T token)
{
+ var args = new List<object> { token };
+ Bytecode.AddStep("by", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the by step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > By (object function)
+ {
+ var args = new List<object> { function };
+ Bytecode.AddStep("by", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the by step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > By (string key)
+ {
+ var args = new List<object> { key };
Bytecode.AddStep("by", args);
return Wrap< S , E >(this);
}
@@ -191,8 +355,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the cap step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E2 > Cap<E2> (params object[] args)
+ public GraphTraversal< S , E2 > Cap<E2> (string sideEffectKey, params
string[] sideEffectKeys)
{
+ var args = new List<object> { sideEffectKey, sideEffectKeys };
Bytecode.AddStep("cap", args);
return Wrap< S , E2 >(this);
}
@@ -200,8 +365,59 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the choose step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E2 > Choose<E2> (params object[] args)
+ public GraphTraversal< S , E2 > Choose<E2> (TraversalPredicate
choosePredicate, ITraversal trueChoice)
{
+ var args = new List<object> { choosePredicate, trueChoice };
+ Bytecode.AddStep("choose", args);
+ return Wrap< S , E2 >(this);
+ }
+
+ /// <summary>
+ /// Adds the choose step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E2 > Choose<E2> (object choiceFunction)
+ {
+ var args = new List<object> { choiceFunction };
+ Bytecode.AddStep("choose", args);
+ return Wrap< S , E2 >(this);
+ }
+
+ /// <summary>
+ /// Adds the choose step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E2 > Choose<E2> (ITraversal choiceTraversal)
+ {
+ var args = new List<object> { choiceTraversal };
+ Bytecode.AddStep("choose", args);
+ return Wrap< S , E2 >(this);
+ }
+
+ /// <summary>
+ /// Adds the choose step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E2 > Choose<E2> (ITraversal
traversalPredicate, ITraversal trueChoice)
+ {
+ var args = new List<object> { traversalPredicate, trueChoice };
+ Bytecode.AddStep("choose", args);
+ return Wrap< S , E2 >(this);
+ }
+
+ /// <summary>
+ /// Adds the choose step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E2 > Choose<E2> (ITraversal
traversalPredicate, ITraversal trueChoice, ITraversal falseChoice)
+ {
+ var args = new List<object> { traversalPredicate, trueChoice,
falseChoice };
+ Bytecode.AddStep("choose", args);
+ return Wrap< S , E2 >(this);
+ }
+
+ /// <summary>
+ /// Adds the choose step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E2 > Choose<E2> (TraversalPredicate
choosePredicate, ITraversal trueChoice, ITraversal falseChoice)
+ {
+ var args = new List<object> { choosePredicate, trueChoice,
falseChoice };
Bytecode.AddStep("choose", args);
return Wrap< S , E2 >(this);
}
@@ -209,8 +425,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the coalesce step to this <see
cref="GraphTraversal{SType, EType}" />.
/// </summary>
- public GraphTraversal< S , E2 > Coalesce<E2> (params object[] args)
+ public GraphTraversal< S , E2 > Coalesce<E2> (params ITraversal[]
coalesceTraversals)
{
+ var args = new List<object> { coalesceTraversals };
Bytecode.AddStep("coalesce", args);
return Wrap< S , E2 >(this);
}
@@ -218,8 +435,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the coin step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > Coin (params object[] args)
+ public GraphTraversal< S , E > Coin (double probability)
{
+ var args = new List<object> { probability };
Bytecode.AddStep("coin", args);
return Wrap< S , E >(this);
}
@@ -227,8 +445,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the constant step to this <see
cref="GraphTraversal{SType, EType}" />.
/// </summary>
- public GraphTraversal< S , E2 > Constant<E2> (params object[] args)
+ public GraphTraversal< S , E2 > Constant<E2> (object e)
{
+ var args = new List<object> { e };
Bytecode.AddStep("constant", args);
return Wrap< S , E2 >(this);
}
@@ -236,8 +455,19 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the count step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , long > Count (params object[] args)
+ public GraphTraversal< S , long > Count ()
{
+ var args = new List<object> { };
+ Bytecode.AddStep("count", args);
+ return Wrap< S , long >(this);
+ }
+
+ /// <summary>
+ /// Adds the count step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , long > Count (Scope scope)
+ {
+ var args = new List<object> { scope };
Bytecode.AddStep("count", args);
return Wrap< S , long >(this);
}
@@ -245,8 +475,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the cyclicPath step to this <see
cref="GraphTraversal{SType, EType}" />.
/// </summary>
- public GraphTraversal< S , E > CyclicPath (params object[] args)
+ public GraphTraversal< S , E > CyclicPath ()
{
+ var args = new List<object> { };
Bytecode.AddStep("cyclicPath", args);
return Wrap< S , E >(this);
}
@@ -254,8 +485,19 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the dedup step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > Dedup (params object[] args)
+ public GraphTraversal< S , E > Dedup (Scope scope, params string[]
dedupLabels)
{
+ var args = new List<object> { scope, dedupLabels };
+ Bytecode.AddStep("dedup", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the dedup step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > Dedup (params string[] dedupLabels)
+ {
+ var args = new List<object> { dedupLabels };
Bytecode.AddStep("dedup", args);
return Wrap< S , E >(this);
}
@@ -263,8 +505,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the drop step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > Drop (params object[] args)
+ public GraphTraversal< S , E > Drop ()
{
+ var args = new List<object> { };
Bytecode.AddStep("drop", args);
return Wrap< S , E >(this);
}
@@ -272,8 +515,29 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the emit step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > Emit (params object[] args)
+ public GraphTraversal< S , E > Emit (ITraversal emitTraversal)
+ {
+ var args = new List<object> { emitTraversal };
+ Bytecode.AddStep("emit", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the emit step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > Emit ()
+ {
+ var args = new List<object> { };
+ Bytecode.AddStep("emit", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the emit step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > Emit (TraversalPredicate emitPredicate)
{
+ var args = new List<object> { emitPredicate };
Bytecode.AddStep("emit", args);
return Wrap< S , E >(this);
}
@@ -281,17 +545,39 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the filter step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > Filter (params object[] args)
+ public GraphTraversal< S , E > Filter (ITraversal filterTraversal)
{
+ var args = new List<object> { filterTraversal };
Bytecode.AddStep("filter", args);
return Wrap< S , E >(this);
}
/// <summary>
+ /// Adds the filter step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > Filter (TraversalPredicate predicate)
+ {
+ var args = new List<object> { predicate };
+ Bytecode.AddStep("filter", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the flatMap step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E2 > FlatMap<E2> (ITraversal
flatMapTraversal)
+ {
+ var args = new List<object> { flatMapTraversal };
+ Bytecode.AddStep("flatMap", args);
+ return Wrap< S , E2 >(this);
+ }
+
+ /// <summary>
/// Adds the flatMap step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E2 > FlatMap<E2> (params object[] args)
+ public GraphTraversal< S , E2 > FlatMap<E2> (object function)
{
+ var args = new List<object> { function };
Bytecode.AddStep("flatMap", args);
return Wrap< S , E2 >(this);
}
@@ -299,17 +585,39 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the fold step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E2 > Fold<E2> (params object[] args)
+ public GraphTraversal< S , E2 > Fold<E2> (object seed, object
foldFunction)
{
+ var args = new List<object> { seed, foldFunction };
Bytecode.AddStep("fold", args);
return Wrap< S , E2 >(this);
}
/// <summary>
+ /// Adds the fold step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , IList<E> > Fold ()
+ {
+ var args = new List<object> { };
+ Bytecode.AddStep("fold", args);
+ return Wrap< S , IList<E> >(this);
+ }
+
+ /// <summary>
/// Adds the from step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > From (params object[] args)
+ public GraphTraversal< S , E > From (ITraversal fromVertex)
{
+ var args = new List<object> { fromVertex };
+ Bytecode.AddStep("from", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the from step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > From (string fromStepLabel)
+ {
+ var args = new List<object> { fromStepLabel };
Bytecode.AddStep("from", args);
return Wrap< S , E >(this);
}
@@ -317,35 +625,149 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the group step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > Group (params object[] args)
+ public GraphTraversal< S , E > Group (string sideEffectKey)
{
+ var args = new List<object> { sideEffectKey };
Bytecode.AddStep("group", args);
return Wrap< S , E >(this);
}
/// <summary>
+ /// Adds the group step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , IDictionary<K, V> > Group<K, V> ()
+ {
+ var args = new List<object> { };
+ Bytecode.AddStep("group", args);
+ return Wrap< S , IDictionary<K, V> >(this);
+ }
+
+ /// <summary>
/// Adds the groupCount step to this <see
cref="GraphTraversal{SType, EType}" />.
/// </summary>
- public GraphTraversal< S , E > GroupCount (params object[] args)
+ public GraphTraversal< S , E > GroupCount (string sideEffectKey)
{
+ var args = new List<object> { sideEffectKey };
Bytecode.AddStep("groupCount", args);
return Wrap< S , E >(this);
}
/// <summary>
+ /// Adds the groupCount step to this <see
cref="GraphTraversal{SType, EType}" />.
+ /// </summary>
+ public GraphTraversal< S , IDictionary<K, long> > GroupCount<K> ()
+ {
+ var args = new List<object> { };
+ Bytecode.AddStep("groupCount", args);
+ return Wrap< S , IDictionary<K, long> >(this);
+ }
+
+ /// <summary>
/// Adds the groupV3d0 step to this <see
cref="GraphTraversal{SType, EType}" />.
/// </summary>
- public GraphTraversal< S , E > GroupV3d0 (params object[] args)
+ public GraphTraversal< S , E > GroupV3d0 (string sideEffectKey)
{
+ var args = new List<object> { sideEffectKey };
Bytecode.AddStep("groupV3d0", args);
return Wrap< S , E >(this);
}
/// <summary>
+ /// Adds the groupV3d0 step to this <see
cref="GraphTraversal{SType, EType}" />.
+ /// </summary>
+ public GraphTraversal< S , IDictionary<K, V> > GroupV3d0<K, V> ()
+ {
+ var args = new List<object> { };
+ Bytecode.AddStep("groupV3d0", args);
+ return Wrap< S , IDictionary<K, V> >(this);
+ }
+
+ /// <summary>
/// Adds the has step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > Has (params object[] args)
+ public GraphTraversal< S , E > Has (string propertyKey, ITraversal
propertyTraversal)
{
+ var args = new List<object> { propertyKey, propertyTraversal };
+ Bytecode.AddStep("has", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the has step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > Has (T accessor, ITraversal
propertyTraversal)
+ {
+ var args = new List<object> { accessor, propertyTraversal };
+ Bytecode.AddStep("has", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the has step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > Has (string label, string propertyKey,
TraversalPredicate predicate)
+ {
+ var args = new List<object> { label, propertyKey, predicate };
+ Bytecode.AddStep("has", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the has step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > Has (string propertyKey)
+ {
+ var args = new List<object> { propertyKey };
+ Bytecode.AddStep("has", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the has step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > Has (T accessor, object value)
+ {
+ var args = new List<object> { accessor, value };
+ Bytecode.AddStep("has", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the has step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > Has (string label, string propertyKey,
object value)
+ {
+ var args = new List<object> { label, propertyKey, value };
+ Bytecode.AddStep("has", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the has step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > Has (string propertyKey, object value)
+ {
+ var args = new List<object> { propertyKey, value };
+ Bytecode.AddStep("has", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the has step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > Has (T accessor, TraversalPredicate
predicate)
+ {
+ var args = new List<object> { accessor, predicate };
+ Bytecode.AddStep("has", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the has step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > Has (string propertyKey,
TraversalPredicate predicate)
+ {
+ var args = new List<object> { propertyKey, predicate };
Bytecode.AddStep("has", args);
return Wrap< S , E >(this);
}
@@ -353,17 +775,39 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the hasId step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > HasId (params object[] args)
+ public GraphTraversal< S , E > HasId (object id, params object[]
otherIds)
{
+ var args = new List<object> { id, otherIds };
Bytecode.AddStep("hasId", args);
return Wrap< S , E >(this);
}
/// <summary>
+ /// Adds the hasId step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > HasId (TraversalPredicate predicate)
+ {
+ var args = new List<object> { predicate };
+ Bytecode.AddStep("hasId", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the hasKey step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > HasKey (string label, params string[]
otherLabels)
+ {
+ var args = new List<object> { label, otherLabels };
+ Bytecode.AddStep("hasKey", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
/// Adds the hasKey step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > HasKey (params object[] args)
+ public GraphTraversal< S , E > HasKey (TraversalPredicate predicate)
{
+ var args = new List<object> { predicate };
Bytecode.AddStep("hasKey", args);
return Wrap< S , E >(this);
}
@@ -371,8 +815,19 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the hasLabel step to this <see
cref="GraphTraversal{SType, EType}" />.
/// </summary>
- public GraphTraversal< S , E > HasLabel (params object[] args)
+ public GraphTraversal< S , E > HasLabel (string label, params string[]
otherLabels)
+ {
+ var args = new List<object> { label, otherLabels };
+ Bytecode.AddStep("hasLabel", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the hasLabel step to this <see
cref="GraphTraversal{SType, EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > HasLabel (TraversalPredicate predicate)
{
+ var args = new List<object> { predicate };
Bytecode.AddStep("hasLabel", args);
return Wrap< S , E >(this);
}
@@ -380,8 +835,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the hasNot step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > HasNot (params object[] args)
+ public GraphTraversal< S , E > HasNot (string propertyKey)
{
+ var args = new List<object> { propertyKey };
Bytecode.AddStep("hasNot", args);
return Wrap< S , E >(this);
}
@@ -389,8 +845,19 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the hasValue step to this <see
cref="GraphTraversal{SType, EType}" />.
/// </summary>
- public GraphTraversal< S , E > HasValue (params object[] args)
+ public GraphTraversal< S , E > HasValue (TraversalPredicate predicate)
+ {
+ var args = new List<object> { predicate };
+ Bytecode.AddStep("hasValue", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the hasValue step to this <see
cref="GraphTraversal{SType, EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > HasValue (object value, params object[]
otherValues)
{
+ var args = new List<object> { value, otherValues };
Bytecode.AddStep("hasValue", args);
return Wrap< S , E >(this);
}
@@ -398,8 +865,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the id step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , object > Id (params object[] args)
+ public GraphTraversal< S , object > Id ()
{
+ var args = new List<object> { };
Bytecode.AddStep("id", args);
return Wrap< S , object >(this);
}
@@ -407,8 +875,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the identity step to this <see
cref="GraphTraversal{SType, EType}" />.
/// </summary>
- public GraphTraversal< S , E > Identity (params object[] args)
+ public GraphTraversal< S , E > Identity ()
{
+ var args = new List<object> { };
Bytecode.AddStep("identity", args);
return Wrap< S , E >(this);
}
@@ -416,8 +885,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the in step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , Vertex > In (params object[] args)
+ public GraphTraversal< S , Vertex > In (params string[] edgeLabels)
{
+ var args = new List<object> { edgeLabels };
Bytecode.AddStep("in", args);
return Wrap< S , Vertex >(this);
}
@@ -425,8 +895,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the inE step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , Edge > InE (params object[] args)
+ public GraphTraversal< S , Edge > InE (params string[] edgeLabels)
{
+ var args = new List<object> { edgeLabels };
Bytecode.AddStep("inE", args);
return Wrap< S , Edge >(this);
}
@@ -434,8 +905,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the inV step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , Vertex > InV (params object[] args)
+ public GraphTraversal< S , Vertex > InV ()
{
+ var args = new List<object> { };
Bytecode.AddStep("inV", args);
return Wrap< S , Vertex >(this);
}
@@ -443,8 +915,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the inject step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > Inject (params object[] args)
+ public GraphTraversal< S , E > Inject (params object[] injections)
{
+ var args = new List<object> { injections };
Bytecode.AddStep("inject", args);
return Wrap< S , E >(this);
}
@@ -452,8 +925,19 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the is step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > Is (params object[] args)
+ public GraphTraversal< S , E > Is (TraversalPredicate predicate)
+ {
+ var args = new List<object> { predicate };
+ Bytecode.AddStep("is", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the is step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > Is (object value)
{
+ var args = new List<object> { value };
Bytecode.AddStep("is", args);
return Wrap< S , E >(this);
}
@@ -461,8 +945,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the key step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , string > Key (params object[] args)
+ public GraphTraversal< S , string > Key ()
{
+ var args = new List<object> { };
Bytecode.AddStep("key", args);
return Wrap< S , string >(this);
}
@@ -470,8 +955,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the label step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , string > Label (params object[] args)
+ public GraphTraversal< S , string > Label ()
{
+ var args = new List<object> { };
Bytecode.AddStep("label", args);
return Wrap< S , string >(this);
}
@@ -479,8 +965,19 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the limit step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E2 > Limit<E2> (params object[] args)
+ public GraphTraversal< S , E > Limit (long limit)
+ {
+ var args = new List<object> { limit };
+ Bytecode.AddStep("limit", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the limit step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E2 > Limit<E2> (Scope scope, long limit)
{
+ var args = new List<object> { scope, limit };
Bytecode.AddStep("limit", args);
return Wrap< S , E2 >(this);
}
@@ -488,8 +985,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the local step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E2 > Local<E2> (params object[] args)
+ public GraphTraversal< S , E2 > Local<E2> (ITraversal localTraversal)
{
+ var args = new List<object> { localTraversal };
Bytecode.AddStep("local", args);
return Wrap< S , E2 >(this);
}
@@ -497,8 +995,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the loops step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , int > Loops (params object[] args)
+ public GraphTraversal< S , int > Loops ()
{
+ var args = new List<object> { };
Bytecode.AddStep("loops", args);
return Wrap< S , int >(this);
}
@@ -506,8 +1005,19 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the map step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E2 > Map<E2> (params object[] args)
+ public GraphTraversal< S , E2 > Map<E2> (ITraversal mapTraversal)
+ {
+ var args = new List<object> { mapTraversal };
+ Bytecode.AddStep("map", args);
+ return Wrap< S , E2 >(this);
+ }
+
+ /// <summary>
+ /// Adds the map step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E2 > Map<E2> (object function)
{
+ var args = new List<object> { function };
Bytecode.AddStep("map", args);
return Wrap< S , E2 >(this);
}
@@ -515,8 +1025,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the mapKeys step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E2 > MapKeys<E2> (params object[] args)
+ public GraphTraversal< S , E2 > MapKeys<E2> ()
{
+ var args = new List<object> { };
Bytecode.AddStep("mapKeys", args);
return Wrap< S , E2 >(this);
}
@@ -524,8 +1035,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the mapValues step to this <see
cref="GraphTraversal{SType, EType}" />.
/// </summary>
- public GraphTraversal< S , E2 > MapValues<E2> (params object[] args)
+ public GraphTraversal< S , E2 > MapValues<E2> ()
{
+ var args = new List<object> { };
Bytecode.AddStep("mapValues", args);
return Wrap< S , E2 >(this);
}
@@ -533,8 +1045,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the match step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , IDictionary<string, E2> > Match<E2> (params
object[] args)
+ public GraphTraversal< S , IDictionary<string, E2> > Match<E2> (params
ITraversal[] matchTraversals)
{
+ var args = new List<object> { matchTraversals };
Bytecode.AddStep("match", args);
return Wrap< S , IDictionary<string, E2> >(this);
}
@@ -542,8 +1055,19 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the max step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E2 > Max<E2> (params object[] args)
+ public GraphTraversal< S , E2 > Max<E2> (Scope scope)
+ {
+ var args = new List<object> { scope };
+ Bytecode.AddStep("max", args);
+ return Wrap< S , E2 >(this);
+ }
+
+ /// <summary>
+ /// Adds the max step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E2 > Max<E2> ()
{
+ var args = new List<object> { };
Bytecode.AddStep("max", args);
return Wrap< S , E2 >(this);
}
@@ -551,8 +1075,19 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the mean step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E2 > Mean<E2> (params object[] args)
+ public GraphTraversal< S , E2 > Mean<E2> (Scope scope)
+ {
+ var args = new List<object> { scope };
+ Bytecode.AddStep("mean", args);
+ return Wrap< S , E2 >(this);
+ }
+
+ /// <summary>
+ /// Adds the mean step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E2 > Mean<E2> ()
{
+ var args = new List<object> { };
Bytecode.AddStep("mean", args);
return Wrap< S , E2 >(this);
}
@@ -560,8 +1095,19 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the min step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E2 > Min<E2> (params object[] args)
+ public GraphTraversal< S , E2 > Min<E2> (Scope scope)
+ {
+ var args = new List<object> { scope };
+ Bytecode.AddStep("min", args);
+ return Wrap< S , E2 >(this);
+ }
+
+ /// <summary>
+ /// Adds the min step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E2 > Min<E2> ()
{
+ var args = new List<object> { };
Bytecode.AddStep("min", args);
return Wrap< S , E2 >(this);
}
@@ -569,8 +1115,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the not step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > Not (params object[] args)
+ public GraphTraversal< S , E > Not (ITraversal notTraversal)
{
+ var args = new List<object> { notTraversal };
Bytecode.AddStep("not", args);
return Wrap< S , E >(this);
}
@@ -578,8 +1125,19 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the option step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > Option (params object[] args)
+ public GraphTraversal< S , E > Option (object pickToken, ITraversal
traversalOption)
+ {
+ var args = new List<object> { pickToken, traversalOption };
+ Bytecode.AddStep("option", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the option step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > Option (ITraversal traversalOption)
{
+ var args = new List<object> { traversalOption };
Bytecode.AddStep("option", args);
return Wrap< S , E >(this);
}
@@ -587,8 +1145,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the optional step to this <see
cref="GraphTraversal{SType, EType}" />.
/// </summary>
- public GraphTraversal< S , E2 > Optional<E2> (params object[] args)
+ public GraphTraversal< S , E2 > Optional<E2> (ITraversal
optionalTraversal)
{
+ var args = new List<object> { optionalTraversal };
Bytecode.AddStep("optional", args);
return Wrap< S , E2 >(this);
}
@@ -596,8 +1155,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the or step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > Or (params object[] args)
+ public GraphTraversal< S , E > Or (params ITraversal[] orTraversals)
{
+ var args = new List<object> { orTraversals };
Bytecode.AddStep("or", args);
return Wrap< S , E >(this);
}
@@ -605,8 +1165,19 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the order step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > Order (params object[] args)
+ public GraphTraversal< S , E > Order (Scope scope)
+ {
+ var args = new List<object> { scope };
+ Bytecode.AddStep("order", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the order step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > Order ()
{
+ var args = new List<object> { };
Bytecode.AddStep("order", args);
return Wrap< S , E >(this);
}
@@ -614,8 +1185,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the otherV step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , Vertex > OtherV (params object[] args)
+ public GraphTraversal< S , Vertex > OtherV ()
{
+ var args = new List<object> { };
Bytecode.AddStep("otherV", args);
return Wrap< S , Vertex >(this);
}
@@ -623,8 +1195,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the out step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , Vertex > Out (params object[] args)
+ public GraphTraversal< S , Vertex > Out (params string[] edgeLabels)
{
+ var args = new List<object> { edgeLabels };
Bytecode.AddStep("out", args);
return Wrap< S , Vertex >(this);
}
@@ -632,8 +1205,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the outE step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , Edge > OutE (params object[] args)
+ public GraphTraversal< S , Edge > OutE (params string[] edgeLabels)
{
+ var args = new List<object> { edgeLabels };
Bytecode.AddStep("outE", args);
return Wrap< S , Edge >(this);
}
@@ -641,8 +1215,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the outV step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , Vertex > OutV (params object[] args)
+ public GraphTraversal< S , Vertex > OutV ()
{
+ var args = new List<object> { };
Bytecode.AddStep("outV", args);
return Wrap< S , Vertex >(this);
}
@@ -650,8 +1225,19 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the pageRank step to this <see
cref="GraphTraversal{SType, EType}" />.
/// </summary>
- public GraphTraversal< S , E > PageRank (params object[] args)
+ public GraphTraversal< S , E > PageRank (double alpha)
+ {
+ var args = new List<object> { alpha };
+ Bytecode.AddStep("pageRank", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the pageRank step to this <see
cref="GraphTraversal{SType, EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > PageRank ()
{
+ var args = new List<object> { };
Bytecode.AddStep("pageRank", args);
return Wrap< S , E >(this);
}
@@ -659,8 +1245,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the path step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , Path > Path (params object[] args)
+ public GraphTraversal< S , Path > Path ()
{
+ var args = new List<object> { };
Bytecode.AddStep("path", args);
return Wrap< S , Path >(this);
}
@@ -668,8 +1255,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the peerPressure step to this <see
cref="GraphTraversal{SType, EType}" />.
/// </summary>
- public GraphTraversal< S , E > PeerPressure (params object[] args)
+ public GraphTraversal< S , E > PeerPressure ()
{
+ var args = new List<object> { };
Bytecode.AddStep("peerPressure", args);
return Wrap< S , E >(this);
}
@@ -677,8 +1265,19 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the profile step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > Profile (params object[] args)
+ public GraphTraversal< S , E2 > Profile<E2> ()
+ {
+ var args = new List<object> { };
+ Bytecode.AddStep("profile", args);
+ return Wrap< S , E2 >(this);
+ }
+
+ /// <summary>
+ /// Adds the profile step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > Profile (string sideEffectKey)
{
+ var args = new List<object> { sideEffectKey };
Bytecode.AddStep("profile", args);
return Wrap< S , E >(this);
}
@@ -686,8 +1285,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the program step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > Program (params object[] args)
+ public GraphTraversal< S , E > Program (object vertexProgram)
{
+ var args = new List<object> { vertexProgram };
Bytecode.AddStep("program", args);
return Wrap< S , E >(this);
}
@@ -695,8 +1295,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the project step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , IDictionary<string, E2> > Project<E2>
(params object[] args)
+ public GraphTraversal< S , IDictionary<string, E2> > Project<E2>
(string projectKey, params string[] otherProjectKeys)
{
+ var args = new List<object> { projectKey, otherProjectKeys };
Bytecode.AddStep("project", args);
return Wrap< S , IDictionary<string, E2> >(this);
}
@@ -704,8 +1305,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the properties step to this <see
cref="GraphTraversal{SType, EType}" />.
/// </summary>
- public GraphTraversal< S , E2 > Properties<E2> (params object[] args)
+ public GraphTraversal< S , E2 > Properties<E2> (params string[]
propertyKeys)
{
+ var args = new List<object> { propertyKeys };
Bytecode.AddStep("properties", args);
return Wrap< S , E2 >(this);
}
@@ -713,8 +1315,19 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the property step to this <see
cref="GraphTraversal{SType, EType}" />.
/// </summary>
- public GraphTraversal< S , E > Property (params object[] args)
+ public GraphTraversal< S , E > Property (object key, object value,
params object[] keyValues)
+ {
+ var args = new List<object> { key, value, keyValues };
+ Bytecode.AddStep("property", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the property step to this <see
cref="GraphTraversal{SType, EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > Property (Cardinality cardinality,
object key, object value, params object[] keyValues)
{
+ var args = new List<object> { cardinality, key, value, keyValues };
Bytecode.AddStep("property", args);
return Wrap< S , E >(this);
}
@@ -722,8 +1335,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the propertyMap step to this <see
cref="GraphTraversal{SType, EType}" />.
/// </summary>
- public GraphTraversal< S , IDictionary<string, E2> > PropertyMap<E2>
(params object[] args)
+ public GraphTraversal< S , IDictionary<string, E2> > PropertyMap<E2>
(params string[] propertyKeys)
{
+ var args = new List<object> { propertyKeys };
Bytecode.AddStep("propertyMap", args);
return Wrap< S , IDictionary<string, E2> >(this);
}
@@ -731,17 +1345,29 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the range step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E2 > Range<E2> (params object[] args)
+ public GraphTraversal< S , E2 > Range<E2> (Scope scope, long low, long
high)
{
+ var args = new List<object> { scope, low, high };
Bytecode.AddStep("range", args);
return Wrap< S , E2 >(this);
}
/// <summary>
+ /// Adds the range step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > Range (long low, long high)
+ {
+ var args = new List<object> { low, high };
+ Bytecode.AddStep("range", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
/// Adds the repeat step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > Repeat (params object[] args)
+ public GraphTraversal< S , E > Repeat (ITraversal repeatTraversal)
{
+ var args = new List<object> { repeatTraversal };
Bytecode.AddStep("repeat", args);
return Wrap< S , E >(this);
}
@@ -749,8 +1375,29 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the sack step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > Sack (params object[] args)
+ public GraphTraversal< S , E2 > Sack<E2> ()
+ {
+ var args = new List<object> { };
+ Bytecode.AddStep("sack", args);
+ return Wrap< S , E2 >(this);
+ }
+
+ /// <summary>
+ /// Adds the sack step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > Sack (object sackOperator)
+ {
+ var args = new List<object> { sackOperator };
+ Bytecode.AddStep("sack", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the sack step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > Sack (object sackOperator, string
elementPropertyKey)
{
+ var args = new List<object> { sackOperator, elementPropertyKey };
Bytecode.AddStep("sack", args);
return Wrap< S , E >(this);
}
@@ -758,8 +1405,19 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the sample step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > Sample (params object[] args)
+ public GraphTraversal< S , E > Sample (int amountToSample)
+ {
+ var args = new List<object> { amountToSample };
+ Bytecode.AddStep("sample", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the sample step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > Sample (Scope scope, int amountToSample)
{
+ var args = new List<object> { scope, amountToSample };
Bytecode.AddStep("sample", args);
return Wrap< S , E >(this);
}
@@ -767,8 +1425,49 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the select step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , IDictionary<string, E2> > Select<E2>
(params object[] args)
+ public GraphTraversal< S , ICollection<E2> > Select<E2> (Column column)
+ {
+ var args = new List<object> { column };
+ Bytecode.AddStep("select", args);
+ return Wrap< S , ICollection<E2> >(this);
+ }
+
+ /// <summary>
+ /// Adds the select step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E2 > Select<E2> (string selectKey)
+ {
+ var args = new List<object> { selectKey };
+ Bytecode.AddStep("select", args);
+ return Wrap< S , E2 >(this);
+ }
+
+ /// <summary>
+ /// Adds the select step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E2 > Select<E2> (Pop pop, string selectKey)
+ {
+ var args = new List<object> { pop, selectKey };
+ Bytecode.AddStep("select", args);
+ return Wrap< S , E2 >(this);
+ }
+
+ /// <summary>
+ /// Adds the select step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , IDictionary<string, E2> > Select<E2> (Pop
pop, string selectKey1, string selectKey2, params string[] otherSelectKeys)
+ {
+ var args = new List<object> { pop, selectKey1, selectKey2,
otherSelectKeys };
+ Bytecode.AddStep("select", args);
+ return Wrap< S , IDictionary<string, E2> >(this);
+ }
+
+ /// <summary>
+ /// Adds the select step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , IDictionary<string, E2> > Select<E2>
(string selectKey1, string selectKey2, params string[] otherSelectKeys)
{
+ var args = new List<object> { selectKey1, selectKey2,
otherSelectKeys };
Bytecode.AddStep("select", args);
return Wrap< S , IDictionary<string, E2> >(this);
}
@@ -776,8 +1475,19 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the sideEffect step to this <see
cref="GraphTraversal{SType, EType}" />.
/// </summary>
- public GraphTraversal< S , E > SideEffect (params object[] args)
+ public GraphTraversal< S , E > SideEffect (ITraversal
sideEffectTraversal)
{
+ var args = new List<object> { sideEffectTraversal };
+ Bytecode.AddStep("sideEffect", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the sideEffect step to this <see
cref="GraphTraversal{SType, EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > SideEffect (object consumer)
+ {
+ var args = new List<object> { consumer };
Bytecode.AddStep("sideEffect", args);
return Wrap< S , E >(this);
}
@@ -785,8 +1495,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the simplePath step to this <see
cref="GraphTraversal{SType, EType}" />.
/// </summary>
- public GraphTraversal< S , E > SimplePath (params object[] args)
+ public GraphTraversal< S , E > SimplePath ()
{
+ var args = new List<object> { };
Bytecode.AddStep("simplePath", args);
return Wrap< S , E >(this);
}
@@ -794,8 +1505,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the store step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > Store (params object[] args)
+ public GraphTraversal< S , E > Store (string sideEffectKey)
{
+ var args = new List<object> { sideEffectKey };
Bytecode.AddStep("store", args);
return Wrap< S , E >(this);
}
@@ -803,8 +1515,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the subgraph step to this <see
cref="GraphTraversal{SType, EType}" />.
/// </summary>
- public GraphTraversal< S , Edge > Subgraph (params object[] args)
+ public GraphTraversal< S , Edge > Subgraph (string sideEffectKey)
{
+ var args = new List<object> { sideEffectKey };
Bytecode.AddStep("subgraph", args);
return Wrap< S , Edge >(this);
}
@@ -812,8 +1525,19 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the sum step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E2 > Sum<E2> (params object[] args)
+ public GraphTraversal< S , E2 > Sum<E2> ()
+ {
+ var args = new List<object> { };
+ Bytecode.AddStep("sum", args);
+ return Wrap< S , E2 >(this);
+ }
+
+ /// <summary>
+ /// Adds the sum step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E2 > Sum<E2> (Scope scope)
{
+ var args = new List<object> { scope };
Bytecode.AddStep("sum", args);
return Wrap< S , E2 >(this);
}
@@ -821,8 +1545,39 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the tail step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E2 > Tail<E2> (params object[] args)
+ public GraphTraversal< S , E2 > Tail<E2> (Scope scope, long limit)
+ {
+ var args = new List<object> { scope, limit };
+ Bytecode.AddStep("tail", args);
+ return Wrap< S , E2 >(this);
+ }
+
+ /// <summary>
+ /// Adds the tail step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > Tail ()
+ {
+ var args = new List<object> { };
+ Bytecode.AddStep("tail", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the tail step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > Tail (long limit)
{
+ var args = new List<object> { limit };
+ Bytecode.AddStep("tail", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the tail step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E2 > Tail<E2> (Scope scope)
+ {
+ var args = new List<object> { scope };
Bytecode.AddStep("tail", args);
return Wrap< S , E2 >(this);
}
@@ -830,8 +1585,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the timeLimit step to this <see
cref="GraphTraversal{SType, EType}" />.
/// </summary>
- public GraphTraversal< S , E > TimeLimit (params object[] args)
+ public GraphTraversal< S , E > TimeLimit (long timeLimit)
{
+ var args = new List<object> { timeLimit };
Bytecode.AddStep("timeLimit", args);
return Wrap< S , E >(this);
}
@@ -839,8 +1595,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the times step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > Times (params object[] args)
+ public GraphTraversal< S , E > Times (int maxLoops)
{
+ var args = new List<object> { maxLoops };
Bytecode.AddStep("times", args);
return Wrap< S , E >(this);
}
@@ -848,8 +1605,29 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the to step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , Vertex > To (params object[] args)
+ public GraphTraversal< S , E > To (ITraversal toVertex)
+ {
+ var args = new List<object> { toVertex };
+ Bytecode.AddStep("to", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the to step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > To (string toStepLabel)
{
+ var args = new List<object> { toStepLabel };
+ Bytecode.AddStep("to", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the to step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , Vertex > To (Direction direction, params
string[] edgeLabels)
+ {
+ var args = new List<object> { direction, edgeLabels };
Bytecode.AddStep("to", args);
return Wrap< S , Vertex >(this);
}
@@ -857,8 +1635,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the toE step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , Edge > ToE (params object[] args)
+ public GraphTraversal< S , Edge > ToE (Direction direction, params
string[] edgeLabels)
{
+ var args = new List<object> { direction, edgeLabels };
Bytecode.AddStep("toE", args);
return Wrap< S , Edge >(this);
}
@@ -866,8 +1645,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the toV step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , Vertex > ToV (params object[] args)
+ public GraphTraversal< S , Vertex > ToV (Direction direction)
{
+ var args = new List<object> { direction };
Bytecode.AddStep("toV", args);
return Wrap< S , Vertex >(this);
}
@@ -875,17 +1655,29 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the tree step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > Tree (params object[] args)
+ public GraphTraversal< S , E > Tree (string sideEffectKey)
{
+ var args = new List<object> { sideEffectKey };
Bytecode.AddStep("tree", args);
return Wrap< S , E >(this);
}
/// <summary>
+ /// Adds the tree step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E2 > Tree<E2> ()
+ {
+ var args = new List<object> { };
+ Bytecode.AddStep("tree", args);
+ return Wrap< S , E2 >(this);
+ }
+
+ /// <summary>
/// Adds the unfold step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E2 > Unfold<E2> (params object[] args)
+ public GraphTraversal< S , E2 > Unfold<E2> ()
{
+ var args = new List<object> { };
Bytecode.AddStep("unfold", args);
return Wrap< S , E2 >(this);
}
@@ -893,8 +1685,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the union step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E2 > Union<E2> (params object[] args)
+ public GraphTraversal< S , E2 > Union<E2> (params ITraversal[]
unionTraversals)
{
+ var args = new List<object> { unionTraversals };
Bytecode.AddStep("union", args);
return Wrap< S , E2 >(this);
}
@@ -902,8 +1695,19 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the until step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > Until (params object[] args)
+ public GraphTraversal< S , E > Until (ITraversal untilTraversal)
{
+ var args = new List<object> { untilTraversal };
+ Bytecode.AddStep("until", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the until step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > Until (TraversalPredicate
untilPredicate)
+ {
+ var args = new List<object> { untilPredicate };
Bytecode.AddStep("until", args);
return Wrap< S , E >(this);
}
@@ -911,8 +1715,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the value step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E2 > Value<E2> (params object[] args)
+ public GraphTraversal< S , E2 > Value<E2> ()
{
+ var args = new List<object> { };
Bytecode.AddStep("value", args);
return Wrap< S , E2 >(this);
}
@@ -920,8 +1725,19 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the valueMap step to this <see
cref="GraphTraversal{SType, EType}" />.
/// </summary>
- public GraphTraversal< S , IDictionary<string, E2> > ValueMap<E2>
(params object[] args)
+ public GraphTraversal< S , IDictionary<string, E2> > ValueMap<E2>
(params string[] propertyKeys)
+ {
+ var args = new List<object> { propertyKeys };
+ Bytecode.AddStep("valueMap", args);
+ return Wrap< S , IDictionary<string, E2> >(this);
+ }
+
+ /// <summary>
+ /// Adds the valueMap step to this <see
cref="GraphTraversal{SType, EType}" />.
+ /// </summary>
+ public GraphTraversal< S , IDictionary<string, E2> > ValueMap<E2>
(bool includeTokens, params string[] propertyKeys)
{
+ var args = new List<object> { includeTokens, propertyKeys };
Bytecode.AddStep("valueMap", args);
return Wrap< S , IDictionary<string, E2> >(this);
}
@@ -929,8 +1745,9 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the values step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E2 > Values<E2> (params object[] args)
+ public GraphTraversal< S , E2 > Values<E2> (params string[]
propertyKeys)
{
+ var args = new List<object> { propertyKeys };
Bytecode.AddStep("values", args);
return Wrap< S , E2 >(this);
}
@@ -938,8 +1755,29 @@ namespace Gremlin.Net.Process.Traversal
/// <summary>
/// Adds the where step to this <see cref="GraphTraversal{SType,
EType}" />.
/// </summary>
- public GraphTraversal< S , E > Where (params object[] args)
+ public GraphTraversal< S , E > Where (TraversalPredicate predicate)
+ {
+ var args = new List<object> { predicate };
+ Bytecode.AddStep("where", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the where step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > Where (string startKey,
TraversalPredicate predicate)
+ {
+ var args = new List<object> { startKey, predicate };
+ Bytecode.AddStep("where", args);
+ return Wrap< S , E >(this);
+ }
+
+ /// <summary>
+ /// Adds the where step to this <see cref="GraphTraversal{SType,
EType}" />.
+ /// </summary>
+ public GraphTraversal< S , E > Where (ITraversal whereTraversal)
{
+ var args = new List<object> { whereTraversal };
Bytecode.AddStep("where", args);
return Wrap< S , E >(this);
}