gremlin 3.7.5 → 3.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (88) hide show
  1. package/README.md +1 -1
  2. package/doc/AnonymousTraversalSource.html +82 -20
  3. package/doc/Authenticator.html +2 -2
  4. package/doc/Bytecode.html +2 -2
  5. package/doc/CardinalityValue.html +6 -6
  6. package/doc/Client.html +2 -2
  7. package/doc/Connection.html +5 -5
  8. package/doc/DriverRemoteConnection.html +2 -2
  9. package/doc/EdgeLabelVerificationStrategy.html +3 -17
  10. package/doc/Graph.html +2 -2
  11. package/doc/GraphSON2Reader.html +2 -2
  12. package/doc/GraphSON2Writer.html +2 -2
  13. package/doc/GraphSON3Reader.html +2 -2
  14. package/doc/GraphSON3Writer.html +2 -2
  15. package/doc/GraphTraversal.html +667 -333
  16. package/doc/GraphTraversalSource.html +23 -174
  17. package/doc/HaltedTraverserStrategy.html +2 -2
  18. package/doc/MatchAlgorithmStrategy.html +3 -3
  19. package/doc/P.html +147 -2
  20. package/doc/PartitionStrategy.html +3 -3
  21. package/doc/Path.html +3 -3
  22. package/doc/PlainTextSaslAuthenticator.html +2 -2
  23. package/doc/ProductiveByStrategy.html +7 -37
  24. package/doc/RemoteConnection.html +2 -2
  25. package/doc/RemoteStrategy.html +2 -2
  26. package/doc/RemoteTraversal.html +2 -2
  27. package/doc/ReservedKeysVerificationStrategy.html +3 -21
  28. package/doc/ResponseError.html +2 -2
  29. package/doc/ResultSet.html +2 -2
  30. package/doc/SaslAuthenticator.html +2 -2
  31. package/doc/SaslMechanismBase.html +2 -2
  32. package/doc/SaslMechanismPlain.html +2 -2
  33. package/doc/SeedStrategy.html +3 -3
  34. package/doc/SubgraphStrategy.html +3 -3
  35. package/doc/TextP.html +12 -12
  36. package/doc/Transaction.html +2 -2
  37. package/doc/Translator.html +2 -2
  38. package/doc/TraversalStrategies.html +2 -2
  39. package/doc/TraversalStrategy.html +2 -2
  40. package/doc/TypeSerializer.html +2 -2
  41. package/doc/driver_auth_authenticator.js.html +2 -2
  42. package/doc/driver_auth_mechanisms_sasl-mechanism-base.js.html +2 -2
  43. package/doc/driver_auth_mechanisms_sasl-mechanism-plain.js.html +2 -2
  44. package/doc/driver_auth_plain-text-sasl-authenticator.js.html +2 -2
  45. package/doc/driver_auth_sasl-authenticator.js.html +2 -2
  46. package/doc/driver_client.js.html +2 -2
  47. package/doc/driver_connection.js.html +9 -6
  48. package/doc/driver_driver-remote-connection.js.html +2 -2
  49. package/doc/driver_remote-connection.js.html +2 -2
  50. package/doc/driver_response-error.js.html +2 -2
  51. package/doc/driver_result-set.js.html +2 -2
  52. package/doc/global.html +91 -3
  53. package/doc/index.html +3 -3
  54. package/doc/module.exports.html +2 -2
  55. package/doc/process_anonymous-traversal.js.html +28 -18
  56. package/doc/process_bytecode.js.html +2 -2
  57. package/doc/process_graph-traversal.js.html +35 -34
  58. package/doc/process_transaction.js.html +2 -2
  59. package/doc/process_translator.js.html +2 -2
  60. package/doc/process_traversal-strategy.js.html +95 -33
  61. package/doc/process_traversal.js.html +21 -4
  62. package/doc/structure_graph.js.html +11 -21
  63. package/doc/structure_io_binary_internals_DataType.js.html +3 -2
  64. package/doc/structure_io_binary_internals_GraphBinaryReader.js.html +2 -2
  65. package/doc/structure_io_binary_internals_GraphBinaryWriter.js.html +2 -2
  66. package/doc/structure_io_graph-serializer.js.html +5 -3
  67. package/doc/structure_io_type-serializers.js.html +70 -8
  68. package/doc/utils.js.html +3 -3
  69. package/docker-compose.yml +2 -1
  70. package/lib/driver/connection.js +7 -4
  71. package/lib/process/anonymous-traversal.js +26 -16
  72. package/lib/process/graph-traversal.js +33 -32
  73. package/lib/process/traversal-strategy.js +93 -31
  74. package/lib/process/traversal.js +19 -2
  75. package/lib/structure/graph.js +9 -19
  76. package/lib/structure/io/binary/GraphBinary.js +3 -2
  77. package/lib/structure/io/binary/internals/AnySerializer.js +3 -0
  78. package/lib/structure/io/binary/internals/ClassSerializer.js +60 -0
  79. package/lib/structure/io/binary/internals/DataType.js +1 -0
  80. package/lib/structure/io/binary/internals/EnumSerializer.js +1 -0
  81. package/lib/structure/io/binary/internals/NumberSerializationStrategy.js +6 -1
  82. package/lib/structure/io/binary/internals/OffsetDateTimeSerializer.js +151 -0
  83. package/lib/structure/io/binary/internals/SetSerializer.js +134 -0
  84. package/lib/structure/io/binary/internals/TraversalStrategySerializer.js +1 -6
  85. package/lib/structure/io/graph-serializer.js +3 -1
  86. package/lib/structure/io/type-serializers.js +68 -6
  87. package/lib/utils.js +1 -1
  88. package/package.json +10 -6
@@ -160,13 +160,13 @@ module.exports = Bytecode;
160
160
  </div>
161
161
 
162
162
  <nav>
163
- <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="AnonymousTraversalSource.html">AnonymousTraversalSource</a></li><li><a href="Authenticator.html">Authenticator</a></li><li><a href="Bytecode.html">Bytecode</a></li><li><a href="CardinalityValue.html">CardinalityValue</a></li><li><a href="Client.html">Client</a></li><li><a href="Connection.html">Connection</a></li><li><a href="DriverRemoteConnection.html">DriverRemoteConnection</a></li><li><a href="EdgeLabelVerificationStrategy.html">EdgeLabelVerificationStrategy</a></li><li><a href="Graph.html">Graph</a></li><li><a href="GraphSON2Reader.html">GraphSON2Reader</a></li><li><a href="GraphSON2Writer.html">GraphSON2Writer</a></li><li><a href="GraphSON3Reader.html">GraphSON3Reader</a></li><li><a href="GraphSON3Writer.html">GraphSON3Writer</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="HaltedTraverserStrategy.html">HaltedTraverserStrategy</a></li><li><a href="MatchAlgorithmStrategy.html">MatchAlgorithmStrategy</a></li><li><a href="module.exports.html">exports</a></li><li><a href="P.html">P</a></li><li><a href="PartitionStrategy.html">PartitionStrategy</a></li><li><a href="Path.html">Path</a></li><li><a href="PlainTextSaslAuthenticator.html">PlainTextSaslAuthenticator</a></li><li><a href="ProductiveByStrategy.html">ProductiveByStrategy</a></li><li><a href="RemoteConnection.html">RemoteConnection</a></li><li><a href="RemoteStrategy.html">RemoteStrategy</a></li><li><a href="RemoteTraversal.html">RemoteTraversal</a></li><li><a href="ReservedKeysVerificationStrategy.html">ReservedKeysVerificationStrategy</a></li><li><a href="ResponseError.html">ResponseError</a></li><li><a href="ResultSet.html">ResultSet</a></li><li><a href="SaslAuthenticator.html">SaslAuthenticator</a></li><li><a href="SaslMechanismBase.html">SaslMechanismBase</a></li><li><a href="SaslMechanismPlain.html">SaslMechanismPlain</a></li><li><a href="SeedStrategy.html">SeedStrategy</a></li><li><a href="SubgraphStrategy.html">SubgraphStrategy</a></li><li><a href="TextP.html">TextP</a></li><li><a href="Transaction.html">Transaction</a></li><li><a href="Translator.html">Translator</a></li><li><a href="TraversalStrategies.html">TraversalStrategies</a></li><li><a href="TraversalStrategy.html">TraversalStrategy</a></li><li><a href="TypeSerializer.html">TypeSerializer</a></li></ul><h3>Global</h3><ul><li><a href="global.html#DataType">DataType</a></li><li><a href="global.html#statics">statics</a></li><li><a href="global.html#toArrayBuffer">toArrayBuffer</a></li></ul>
163
+ <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="AnonymousTraversalSource.html">AnonymousTraversalSource</a></li><li><a href="Authenticator.html">Authenticator</a></li><li><a href="Bytecode.html">Bytecode</a></li><li><a href="CardinalityValue.html">CardinalityValue</a></li><li><a href="Client.html">Client</a></li><li><a href="Connection.html">Connection</a></li><li><a href="DriverRemoteConnection.html">DriverRemoteConnection</a></li><li><a href="EdgeLabelVerificationStrategy.html">EdgeLabelVerificationStrategy</a></li><li><a href="Graph.html">Graph</a></li><li><a href="GraphSON2Reader.html">GraphSON2Reader</a></li><li><a href="GraphSON2Writer.html">GraphSON2Writer</a></li><li><a href="GraphSON3Reader.html">GraphSON3Reader</a></li><li><a href="GraphSON3Writer.html">GraphSON3Writer</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="HaltedTraverserStrategy.html">HaltedTraverserStrategy</a></li><li><a href="MatchAlgorithmStrategy.html">MatchAlgorithmStrategy</a></li><li><a href="module.exports.html">exports</a></li><li><a href="P.html">P</a></li><li><a href="PartitionStrategy.html">PartitionStrategy</a></li><li><a href="Path.html">Path</a></li><li><a href="PlainTextSaslAuthenticator.html">PlainTextSaslAuthenticator</a></li><li><a href="ProductiveByStrategy.html">ProductiveByStrategy</a></li><li><a href="RemoteConnection.html">RemoteConnection</a></li><li><a href="RemoteStrategy.html">RemoteStrategy</a></li><li><a href="RemoteTraversal.html">RemoteTraversal</a></li><li><a href="ReservedKeysVerificationStrategy.html">ReservedKeysVerificationStrategy</a></li><li><a href="ResponseError.html">ResponseError</a></li><li><a href="ResultSet.html">ResultSet</a></li><li><a href="SaslAuthenticator.html">SaslAuthenticator</a></li><li><a href="SaslMechanismBase.html">SaslMechanismBase</a></li><li><a href="SaslMechanismPlain.html">SaslMechanismPlain</a></li><li><a href="SeedStrategy.html">SeedStrategy</a></li><li><a href="SubgraphStrategy.html">SubgraphStrategy</a></li><li><a href="TextP.html">TextP</a></li><li><a href="Transaction.html">Transaction</a></li><li><a href="Translator.html">Translator</a></li><li><a href="TraversalStrategies.html">TraversalStrategies</a></li><li><a href="TraversalStrategy.html">TraversalStrategy</a></li><li><a href="TypeSerializer.html">TypeSerializer</a></li></ul><h3>Global</h3><ul><li><a href="global.html#DataType">DataType</a></li><li><a href="global.html#deserializeProperties">deserializeProperties</a></li><li><a href="global.html#statics">statics</a></li><li><a href="global.html#toArrayBuffer">toArrayBuffer</a></li></ul>
164
164
  </nav>
165
165
 
166
166
  <br class="clear">
167
167
 
168
168
  <footer>
169
- Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Mon Nov 17 2025 10:18:37 GMT-0800 (Pacific Standard Time)
169
+ Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Mon Nov 17 2025 15:09:27 GMT-0800 (Pacific Standard Time)
170
170
  </footer>
171
171
 
172
172
  <script> prettyPrint(); </script>
@@ -52,7 +52,6 @@
52
52
 
53
53
  const { Traversal, cardinality } = require('./traversal');
54
54
  const { Transaction } = require('./transaction');
55
- const remote = require('../driver/remote-connection');
56
55
  const Bytecode = require('./bytecode');
57
56
  const { TraversalStrategies, VertexProgramStrategy, OptionsStrategy } = require('./traversal-strategy');
58
57
 
@@ -74,30 +73,10 @@ class GraphTraversalSource {
74
73
  this.bytecode = bytecode || new Bytecode();
75
74
  this.graphTraversalSourceClass = graphTraversalSourceClass || GraphTraversalSource;
76
75
  this.graphTraversalClass = graphTraversalClass || GraphTraversal;
77
-
78
- // in order to keep the constructor unchanged within 3.5.x we can try to pop the RemoteConnection out of the
79
- // TraversalStrategies. keeping this unchanged will allow user DSLs to not take a break.
80
- // TODO: refactor this to be nicer in 3.6.0 when we can take a breaking change
81
76
  const strat = traversalStrategies.strategies.find((ts) => ts.fqcn === 'js:RemoteStrategy');
82
77
  this.remoteConnection = strat !== undefined ? strat.connection : undefined;
83
78
  }
84
79
 
85
- /**
86
- * @param {RemoteConnection} remoteConnection
87
- * @returns {GraphTraversalSource}
88
- */
89
- withRemote(remoteConnection) {
90
- const traversalStrategy = new TraversalStrategies(this.traversalStrategies);
91
- traversalStrategy.addStrategy(new remote.RemoteStrategy(remoteConnection));
92
- return new this.graphTraversalSourceClass(
93
- this.graph,
94
- traversalStrategy,
95
- new Bytecode(this.bytecode),
96
- this.graphTraversalSourceClass,
97
- this.graphTraversalClass,
98
- );
99
- }
100
-
101
80
  /**
102
81
  * Spawn a new &lt;code>Transaction&lt;/code> object that can then start and stop a transaction.
103
82
  * @returns {Transaction}
@@ -482,6 +461,16 @@ class GraphTraversal extends Traversal {
482
461
  return this;
483
462
  }
484
463
 
464
+ /**
465
+ * Graph traversal asBool method.
466
+ * @param {...Object} args
467
+ * @returns {GraphTraversal}
468
+ */
469
+ asBool(...args) {
470
+ this.bytecode.addStep('asBool', args);
471
+ return this;
472
+ }
473
+
485
474
  /**
486
475
  * Graph traversal asDate method.
487
476
  * @param {...Object} args
@@ -492,6 +481,16 @@ class GraphTraversal extends Traversal {
492
481
  return this;
493
482
  }
494
483
 
484
+ /**
485
+ * Graph traversal asNumber method.
486
+ * @param {...Object} args
487
+ * @returns {GraphTraversal}
488
+ */
489
+ asNumber(...args) {
490
+ this.bytecode.addStep('asNumber', args);
491
+ return this;
492
+ }
493
+
495
494
  /**
496
495
  * Graph traversal asString method.
497
496
  * @param {...Object} args
@@ -721,6 +720,16 @@ class GraphTraversal extends Traversal {
721
720
  return this;
722
721
  }
723
722
 
723
+ /**
724
+ * Graph traversal discard method.
725
+ * @param {...Object} args
726
+ * @returns {GraphTraversal}
727
+ */
728
+ discard(...args) {
729
+ this.bytecode.addStep('discard', args);
730
+ return this;
731
+ }
732
+
724
733
  /**
725
734
  * Graph traversal disjunct method.
726
735
  * @param {...Object} args
@@ -1500,16 +1509,6 @@ class GraphTraversal extends Traversal {
1500
1509
  return this;
1501
1510
  }
1502
1511
 
1503
- /**
1504
- * Graph traversal store method.
1505
- * @param {...Object} args
1506
- * @returns {GraphTraversal}
1507
- */
1508
- store(...args) {
1509
- this.bytecode.addStep('store', args);
1510
- return this;
1511
- }
1512
-
1513
1512
  /**
1514
1513
  * Graph traversal subgraph method.
1515
1514
  * @param {...Object} args
@@ -1789,7 +1788,9 @@ const statics = {
1789
1788
  and: (...args) => callOnEmptyTraversal('and', args),
1790
1789
  any: (...args) => callOnEmptyTraversal('any', args),
1791
1790
  as: (...args) => callOnEmptyTraversal('as', args),
1791
+ asBool: (...args) => callOnEmptyTraversal('asBool', args),
1792
1792
  asDate: (...args) => callOnEmptyTraversal('asDate', args),
1793
+ asNumber: (...args) => callOnEmptyTraversal('asNumber', args),
1793
1794
  asString: (...args) => callOnEmptyTraversal('asString', args),
1794
1795
  barrier: (...args) => callOnEmptyTraversal('barrier', args),
1795
1796
  both: (...args) => callOnEmptyTraversal('both', args),
@@ -1811,6 +1812,7 @@ const statics = {
1811
1812
  dateDiff: (...args) => callOnEmptyTraversal('dateDiff', args),
1812
1813
  dedup: (...args) => callOnEmptyTraversal('dedup', args),
1813
1814
  difference: (...args) => callOnEmptyTraversal('difference', args),
1815
+ discard: (...args) => callOnEmptyTraversal('discard', args),
1814
1816
  disjunct: (...args) => callOnEmptyTraversal('disjunct', args),
1815
1817
  drop: (...args) => callOnEmptyTraversal('drop', args),
1816
1818
  element: (...args) => callOnEmptyTraversal('element', args),
@@ -1881,7 +1883,6 @@ const statics = {
1881
1883
  simplePath: (...args) => callOnEmptyTraversal('simplePath', args),
1882
1884
  skip: (...args) => callOnEmptyTraversal('skip', args),
1883
1885
  split: (...args) => callOnEmptyTraversal('split', args),
1884
- store: (...args) => callOnEmptyTraversal('store', args),
1885
1886
  subgraph: (...args) => callOnEmptyTraversal('subgraph', args),
1886
1887
  substring: (...args) => callOnEmptyTraversal('substring', args),
1887
1888
  sum: (...args) => callOnEmptyTraversal('sum', args),
@@ -1920,13 +1921,13 @@ module.exports = {
1920
1921
  </div>
1921
1922
 
1922
1923
  <nav>
1923
- <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="AnonymousTraversalSource.html">AnonymousTraversalSource</a></li><li><a href="Authenticator.html">Authenticator</a></li><li><a href="Bytecode.html">Bytecode</a></li><li><a href="CardinalityValue.html">CardinalityValue</a></li><li><a href="Client.html">Client</a></li><li><a href="Connection.html">Connection</a></li><li><a href="DriverRemoteConnection.html">DriverRemoteConnection</a></li><li><a href="EdgeLabelVerificationStrategy.html">EdgeLabelVerificationStrategy</a></li><li><a href="Graph.html">Graph</a></li><li><a href="GraphSON2Reader.html">GraphSON2Reader</a></li><li><a href="GraphSON2Writer.html">GraphSON2Writer</a></li><li><a href="GraphSON3Reader.html">GraphSON3Reader</a></li><li><a href="GraphSON3Writer.html">GraphSON3Writer</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="HaltedTraverserStrategy.html">HaltedTraverserStrategy</a></li><li><a href="MatchAlgorithmStrategy.html">MatchAlgorithmStrategy</a></li><li><a href="module.exports.html">exports</a></li><li><a href="P.html">P</a></li><li><a href="PartitionStrategy.html">PartitionStrategy</a></li><li><a href="Path.html">Path</a></li><li><a href="PlainTextSaslAuthenticator.html">PlainTextSaslAuthenticator</a></li><li><a href="ProductiveByStrategy.html">ProductiveByStrategy</a></li><li><a href="RemoteConnection.html">RemoteConnection</a></li><li><a href="RemoteStrategy.html">RemoteStrategy</a></li><li><a href="RemoteTraversal.html">RemoteTraversal</a></li><li><a href="ReservedKeysVerificationStrategy.html">ReservedKeysVerificationStrategy</a></li><li><a href="ResponseError.html">ResponseError</a></li><li><a href="ResultSet.html">ResultSet</a></li><li><a href="SaslAuthenticator.html">SaslAuthenticator</a></li><li><a href="SaslMechanismBase.html">SaslMechanismBase</a></li><li><a href="SaslMechanismPlain.html">SaslMechanismPlain</a></li><li><a href="SeedStrategy.html">SeedStrategy</a></li><li><a href="SubgraphStrategy.html">SubgraphStrategy</a></li><li><a href="TextP.html">TextP</a></li><li><a href="Transaction.html">Transaction</a></li><li><a href="Translator.html">Translator</a></li><li><a href="TraversalStrategies.html">TraversalStrategies</a></li><li><a href="TraversalStrategy.html">TraversalStrategy</a></li><li><a href="TypeSerializer.html">TypeSerializer</a></li></ul><h3>Global</h3><ul><li><a href="global.html#DataType">DataType</a></li><li><a href="global.html#statics">statics</a></li><li><a href="global.html#toArrayBuffer">toArrayBuffer</a></li></ul>
1924
+ <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="AnonymousTraversalSource.html">AnonymousTraversalSource</a></li><li><a href="Authenticator.html">Authenticator</a></li><li><a href="Bytecode.html">Bytecode</a></li><li><a href="CardinalityValue.html">CardinalityValue</a></li><li><a href="Client.html">Client</a></li><li><a href="Connection.html">Connection</a></li><li><a href="DriverRemoteConnection.html">DriverRemoteConnection</a></li><li><a href="EdgeLabelVerificationStrategy.html">EdgeLabelVerificationStrategy</a></li><li><a href="Graph.html">Graph</a></li><li><a href="GraphSON2Reader.html">GraphSON2Reader</a></li><li><a href="GraphSON2Writer.html">GraphSON2Writer</a></li><li><a href="GraphSON3Reader.html">GraphSON3Reader</a></li><li><a href="GraphSON3Writer.html">GraphSON3Writer</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="HaltedTraverserStrategy.html">HaltedTraverserStrategy</a></li><li><a href="MatchAlgorithmStrategy.html">MatchAlgorithmStrategy</a></li><li><a href="module.exports.html">exports</a></li><li><a href="P.html">P</a></li><li><a href="PartitionStrategy.html">PartitionStrategy</a></li><li><a href="Path.html">Path</a></li><li><a href="PlainTextSaslAuthenticator.html">PlainTextSaslAuthenticator</a></li><li><a href="ProductiveByStrategy.html">ProductiveByStrategy</a></li><li><a href="RemoteConnection.html">RemoteConnection</a></li><li><a href="RemoteStrategy.html">RemoteStrategy</a></li><li><a href="RemoteTraversal.html">RemoteTraversal</a></li><li><a href="ReservedKeysVerificationStrategy.html">ReservedKeysVerificationStrategy</a></li><li><a href="ResponseError.html">ResponseError</a></li><li><a href="ResultSet.html">ResultSet</a></li><li><a href="SaslAuthenticator.html">SaslAuthenticator</a></li><li><a href="SaslMechanismBase.html">SaslMechanismBase</a></li><li><a href="SaslMechanismPlain.html">SaslMechanismPlain</a></li><li><a href="SeedStrategy.html">SeedStrategy</a></li><li><a href="SubgraphStrategy.html">SubgraphStrategy</a></li><li><a href="TextP.html">TextP</a></li><li><a href="Transaction.html">Transaction</a></li><li><a href="Translator.html">Translator</a></li><li><a href="TraversalStrategies.html">TraversalStrategies</a></li><li><a href="TraversalStrategy.html">TraversalStrategy</a></li><li><a href="TypeSerializer.html">TypeSerializer</a></li></ul><h3>Global</h3><ul><li><a href="global.html#DataType">DataType</a></li><li><a href="global.html#deserializeProperties">deserializeProperties</a></li><li><a href="global.html#statics">statics</a></li><li><a href="global.html#toArrayBuffer">toArrayBuffer</a></li></ul>
1924
1925
  </nav>
1925
1926
 
1926
1927
  <br class="clear">
1927
1928
 
1928
1929
  <footer>
1929
- Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Mon Nov 17 2025 10:18:37 GMT-0800 (Pacific Standard Time)
1930
+ Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Mon Nov 17 2025 15:09:27 GMT-0800 (Pacific Standard Time)
1930
1931
  </footer>
1931
1932
 
1932
1933
  <script> prettyPrint(); </script>
@@ -136,13 +136,13 @@ module.exports = {
136
136
  </div>
137
137
 
138
138
  <nav>
139
- <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="AnonymousTraversalSource.html">AnonymousTraversalSource</a></li><li><a href="Authenticator.html">Authenticator</a></li><li><a href="Bytecode.html">Bytecode</a></li><li><a href="CardinalityValue.html">CardinalityValue</a></li><li><a href="Client.html">Client</a></li><li><a href="Connection.html">Connection</a></li><li><a href="DriverRemoteConnection.html">DriverRemoteConnection</a></li><li><a href="EdgeLabelVerificationStrategy.html">EdgeLabelVerificationStrategy</a></li><li><a href="Graph.html">Graph</a></li><li><a href="GraphSON2Reader.html">GraphSON2Reader</a></li><li><a href="GraphSON2Writer.html">GraphSON2Writer</a></li><li><a href="GraphSON3Reader.html">GraphSON3Reader</a></li><li><a href="GraphSON3Writer.html">GraphSON3Writer</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="HaltedTraverserStrategy.html">HaltedTraverserStrategy</a></li><li><a href="MatchAlgorithmStrategy.html">MatchAlgorithmStrategy</a></li><li><a href="module.exports.html">exports</a></li><li><a href="P.html">P</a></li><li><a href="PartitionStrategy.html">PartitionStrategy</a></li><li><a href="Path.html">Path</a></li><li><a href="PlainTextSaslAuthenticator.html">PlainTextSaslAuthenticator</a></li><li><a href="ProductiveByStrategy.html">ProductiveByStrategy</a></li><li><a href="RemoteConnection.html">RemoteConnection</a></li><li><a href="RemoteStrategy.html">RemoteStrategy</a></li><li><a href="RemoteTraversal.html">RemoteTraversal</a></li><li><a href="ReservedKeysVerificationStrategy.html">ReservedKeysVerificationStrategy</a></li><li><a href="ResponseError.html">ResponseError</a></li><li><a href="ResultSet.html">ResultSet</a></li><li><a href="SaslAuthenticator.html">SaslAuthenticator</a></li><li><a href="SaslMechanismBase.html">SaslMechanismBase</a></li><li><a href="SaslMechanismPlain.html">SaslMechanismPlain</a></li><li><a href="SeedStrategy.html">SeedStrategy</a></li><li><a href="SubgraphStrategy.html">SubgraphStrategy</a></li><li><a href="TextP.html">TextP</a></li><li><a href="Transaction.html">Transaction</a></li><li><a href="Translator.html">Translator</a></li><li><a href="TraversalStrategies.html">TraversalStrategies</a></li><li><a href="TraversalStrategy.html">TraversalStrategy</a></li><li><a href="TypeSerializer.html">TypeSerializer</a></li></ul><h3>Global</h3><ul><li><a href="global.html#DataType">DataType</a></li><li><a href="global.html#statics">statics</a></li><li><a href="global.html#toArrayBuffer">toArrayBuffer</a></li></ul>
139
+ <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="AnonymousTraversalSource.html">AnonymousTraversalSource</a></li><li><a href="Authenticator.html">Authenticator</a></li><li><a href="Bytecode.html">Bytecode</a></li><li><a href="CardinalityValue.html">CardinalityValue</a></li><li><a href="Client.html">Client</a></li><li><a href="Connection.html">Connection</a></li><li><a href="DriverRemoteConnection.html">DriverRemoteConnection</a></li><li><a href="EdgeLabelVerificationStrategy.html">EdgeLabelVerificationStrategy</a></li><li><a href="Graph.html">Graph</a></li><li><a href="GraphSON2Reader.html">GraphSON2Reader</a></li><li><a href="GraphSON2Writer.html">GraphSON2Writer</a></li><li><a href="GraphSON3Reader.html">GraphSON3Reader</a></li><li><a href="GraphSON3Writer.html">GraphSON3Writer</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="HaltedTraverserStrategy.html">HaltedTraverserStrategy</a></li><li><a href="MatchAlgorithmStrategy.html">MatchAlgorithmStrategy</a></li><li><a href="module.exports.html">exports</a></li><li><a href="P.html">P</a></li><li><a href="PartitionStrategy.html">PartitionStrategy</a></li><li><a href="Path.html">Path</a></li><li><a href="PlainTextSaslAuthenticator.html">PlainTextSaslAuthenticator</a></li><li><a href="ProductiveByStrategy.html">ProductiveByStrategy</a></li><li><a href="RemoteConnection.html">RemoteConnection</a></li><li><a href="RemoteStrategy.html">RemoteStrategy</a></li><li><a href="RemoteTraversal.html">RemoteTraversal</a></li><li><a href="ReservedKeysVerificationStrategy.html">ReservedKeysVerificationStrategy</a></li><li><a href="ResponseError.html">ResponseError</a></li><li><a href="ResultSet.html">ResultSet</a></li><li><a href="SaslAuthenticator.html">SaslAuthenticator</a></li><li><a href="SaslMechanismBase.html">SaslMechanismBase</a></li><li><a href="SaslMechanismPlain.html">SaslMechanismPlain</a></li><li><a href="SeedStrategy.html">SeedStrategy</a></li><li><a href="SubgraphStrategy.html">SubgraphStrategy</a></li><li><a href="TextP.html">TextP</a></li><li><a href="Transaction.html">Transaction</a></li><li><a href="Translator.html">Translator</a></li><li><a href="TraversalStrategies.html">TraversalStrategies</a></li><li><a href="TraversalStrategy.html">TraversalStrategy</a></li><li><a href="TypeSerializer.html">TypeSerializer</a></li></ul><h3>Global</h3><ul><li><a href="global.html#DataType">DataType</a></li><li><a href="global.html#deserializeProperties">deserializeProperties</a></li><li><a href="global.html#statics">statics</a></li><li><a href="global.html#toArrayBuffer">toArrayBuffer</a></li></ul>
140
140
  </nav>
141
141
 
142
142
  <br class="clear">
143
143
 
144
144
  <footer>
145
- Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Mon Nov 17 2025 10:18:37 GMT-0800 (Pacific Standard Time)
145
+ Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Mon Nov 17 2025 15:09:27 GMT-0800 (Pacific Standard Time)
146
146
  </footer>
147
147
 
148
148
  <script> prettyPrint(); </script>
@@ -157,13 +157,13 @@ module.exports = Translator;
157
157
  </div>
158
158
 
159
159
  <nav>
160
- <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="AnonymousTraversalSource.html">AnonymousTraversalSource</a></li><li><a href="Authenticator.html">Authenticator</a></li><li><a href="Bytecode.html">Bytecode</a></li><li><a href="CardinalityValue.html">CardinalityValue</a></li><li><a href="Client.html">Client</a></li><li><a href="Connection.html">Connection</a></li><li><a href="DriverRemoteConnection.html">DriverRemoteConnection</a></li><li><a href="EdgeLabelVerificationStrategy.html">EdgeLabelVerificationStrategy</a></li><li><a href="Graph.html">Graph</a></li><li><a href="GraphSON2Reader.html">GraphSON2Reader</a></li><li><a href="GraphSON2Writer.html">GraphSON2Writer</a></li><li><a href="GraphSON3Reader.html">GraphSON3Reader</a></li><li><a href="GraphSON3Writer.html">GraphSON3Writer</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="HaltedTraverserStrategy.html">HaltedTraverserStrategy</a></li><li><a href="MatchAlgorithmStrategy.html">MatchAlgorithmStrategy</a></li><li><a href="module.exports.html">exports</a></li><li><a href="P.html">P</a></li><li><a href="PartitionStrategy.html">PartitionStrategy</a></li><li><a href="Path.html">Path</a></li><li><a href="PlainTextSaslAuthenticator.html">PlainTextSaslAuthenticator</a></li><li><a href="ProductiveByStrategy.html">ProductiveByStrategy</a></li><li><a href="RemoteConnection.html">RemoteConnection</a></li><li><a href="RemoteStrategy.html">RemoteStrategy</a></li><li><a href="RemoteTraversal.html">RemoteTraversal</a></li><li><a href="ReservedKeysVerificationStrategy.html">ReservedKeysVerificationStrategy</a></li><li><a href="ResponseError.html">ResponseError</a></li><li><a href="ResultSet.html">ResultSet</a></li><li><a href="SaslAuthenticator.html">SaslAuthenticator</a></li><li><a href="SaslMechanismBase.html">SaslMechanismBase</a></li><li><a href="SaslMechanismPlain.html">SaslMechanismPlain</a></li><li><a href="SeedStrategy.html">SeedStrategy</a></li><li><a href="SubgraphStrategy.html">SubgraphStrategy</a></li><li><a href="TextP.html">TextP</a></li><li><a href="Transaction.html">Transaction</a></li><li><a href="Translator.html">Translator</a></li><li><a href="TraversalStrategies.html">TraversalStrategies</a></li><li><a href="TraversalStrategy.html">TraversalStrategy</a></li><li><a href="TypeSerializer.html">TypeSerializer</a></li></ul><h3>Global</h3><ul><li><a href="global.html#DataType">DataType</a></li><li><a href="global.html#statics">statics</a></li><li><a href="global.html#toArrayBuffer">toArrayBuffer</a></li></ul>
160
+ <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="AnonymousTraversalSource.html">AnonymousTraversalSource</a></li><li><a href="Authenticator.html">Authenticator</a></li><li><a href="Bytecode.html">Bytecode</a></li><li><a href="CardinalityValue.html">CardinalityValue</a></li><li><a href="Client.html">Client</a></li><li><a href="Connection.html">Connection</a></li><li><a href="DriverRemoteConnection.html">DriverRemoteConnection</a></li><li><a href="EdgeLabelVerificationStrategy.html">EdgeLabelVerificationStrategy</a></li><li><a href="Graph.html">Graph</a></li><li><a href="GraphSON2Reader.html">GraphSON2Reader</a></li><li><a href="GraphSON2Writer.html">GraphSON2Writer</a></li><li><a href="GraphSON3Reader.html">GraphSON3Reader</a></li><li><a href="GraphSON3Writer.html">GraphSON3Writer</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="HaltedTraverserStrategy.html">HaltedTraverserStrategy</a></li><li><a href="MatchAlgorithmStrategy.html">MatchAlgorithmStrategy</a></li><li><a href="module.exports.html">exports</a></li><li><a href="P.html">P</a></li><li><a href="PartitionStrategy.html">PartitionStrategy</a></li><li><a href="Path.html">Path</a></li><li><a href="PlainTextSaslAuthenticator.html">PlainTextSaslAuthenticator</a></li><li><a href="ProductiveByStrategy.html">ProductiveByStrategy</a></li><li><a href="RemoteConnection.html">RemoteConnection</a></li><li><a href="RemoteStrategy.html">RemoteStrategy</a></li><li><a href="RemoteTraversal.html">RemoteTraversal</a></li><li><a href="ReservedKeysVerificationStrategy.html">ReservedKeysVerificationStrategy</a></li><li><a href="ResponseError.html">ResponseError</a></li><li><a href="ResultSet.html">ResultSet</a></li><li><a href="SaslAuthenticator.html">SaslAuthenticator</a></li><li><a href="SaslMechanismBase.html">SaslMechanismBase</a></li><li><a href="SaslMechanismPlain.html">SaslMechanismPlain</a></li><li><a href="SeedStrategy.html">SeedStrategy</a></li><li><a href="SubgraphStrategy.html">SubgraphStrategy</a></li><li><a href="TextP.html">TextP</a></li><li><a href="Transaction.html">Transaction</a></li><li><a href="Translator.html">Translator</a></li><li><a href="TraversalStrategies.html">TraversalStrategies</a></li><li><a href="TraversalStrategy.html">TraversalStrategy</a></li><li><a href="TypeSerializer.html">TypeSerializer</a></li></ul><h3>Global</h3><ul><li><a href="global.html#DataType">DataType</a></li><li><a href="global.html#deserializeProperties">deserializeProperties</a></li><li><a href="global.html#statics">statics</a></li><li><a href="global.html#toArrayBuffer">toArrayBuffer</a></li></ul>
161
161
  </nav>
162
162
 
163
163
  <br class="clear">
164
164
 
165
165
  <footer>
166
- Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Mon Nov 17 2025 10:18:37 GMT-0800 (Pacific Standard Time)
166
+ Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Mon Nov 17 2025 15:09:27 GMT-0800 (Pacific Standard Time)
167
167
  </footer>
168
168
 
169
169
  <script> prettyPrint(); </script>
@@ -130,7 +130,7 @@ class HaltedTraverserStrategy extends TraversalStrategy {
130
130
  /**
131
131
  * @param {String} haltedTraverserFactory full qualified class name in Java of a {@code HaltedTraverserFactory} implementation
132
132
  */
133
- constructor(haltedTraverserFactory) {
133
+ constructor({ haltedTraverserFactory } = {}) {
134
134
  super('org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.HaltedTraverserStrategy');
135
135
  if (haltedTraverserFactory !== undefined) {
136
136
  this.configuration['haltedTraverserFactory'] = haltedTraverserFactory;
@@ -138,9 +138,20 @@ class HaltedTraverserStrategy extends TraversalStrategy {
138
138
  }
139
139
  }
140
140
 
141
+ class MessagePassingReductionStrategy extends TraversalStrategy {
142
+ constructor() {
143
+ super(
144
+ 'org.apache.tinkerpop.gremlin.process.computer.traversal.strategy.optimization.MessagePassingReductionStrategy',
145
+ );
146
+ }
147
+ }
148
+
141
149
  class OptionsStrategy extends TraversalStrategy {
142
150
  constructor(options) {
143
- super('org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.OptionsStrategy', options);
151
+ super('org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.OptionsStrategy');
152
+ if (options !== undefined) {
153
+ this.configuration = options;
154
+ }
144
155
  }
145
156
  }
146
157
 
@@ -157,6 +168,24 @@ class PartitionStrategy extends TraversalStrategy {
157
168
  }
158
169
  }
159
170
 
171
+ class ProfileStrategy extends TraversalStrategy {
172
+ constructor() {
173
+ super('org.apache.tinkerpop.gremlin.process.traversal.strategy.finalization.ProfileStrategy');
174
+ }
175
+ }
176
+
177
+ class SeedStrategy extends TraversalStrategy {
178
+ /**
179
+ * @param {Object} [options]
180
+ * @param {number} [options.seed] the seed to provide to the random number generator for the traversal
181
+ */
182
+ constructor(options) {
183
+ super('org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SeedStrategy', {
184
+ seed: options?.seed,
185
+ });
186
+ }
187
+ }
188
+
160
189
  class SubgraphStrategy extends TraversalStrategy {
161
190
  /**
162
191
  * @param {Object} [options]
@@ -179,13 +208,9 @@ class SubgraphStrategy extends TraversalStrategy {
179
208
  }
180
209
  }
181
210
 
182
- class ProductiveByStrategy extends TraversalStrategy {
183
- /**
184
- * @param {Object} [options]
185
- * @param {Array&lt;String>} [options.productiveKeys] set of keys that will always be productive
186
- */
187
- constructor(options) {
188
- super('org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy', options);
211
+ class ReferenceElementStrategy extends TraversalStrategy {
212
+ constructor() {
213
+ super('org.apache.tinkerpop.gremlin.process.traversal.strategy.finalization.ReferenceElementStrategy');
189
214
  }
190
215
  }
191
216
 
@@ -199,7 +224,7 @@ class MatchAlgorithmStrategy extends TraversalStrategy {
199
224
  /**
200
225
  * @param matchAlgorithm
201
226
  */
202
- constructor(matchAlgorithm) {
227
+ constructor({ matchAlgorithm } = {}) {
203
228
  super('org.apache.tinkerpop.gremlin.process.traversal.strategy.finalization.MatchAlgorithmStrategy');
204
229
  if (matchAlgorithm !== undefined) {
205
230
  this.configuration['matchAlgorithm'] = matchAlgorithm;
@@ -207,12 +232,24 @@ class MatchAlgorithmStrategy extends TraversalStrategy {
207
232
  }
208
233
  }
209
234
 
235
+ class ComputerFinalizationStrategy extends TraversalStrategy {
236
+ constructor() {
237
+ super('org.apache.tinkerpop.gremlin.process.computer.traversal.strategy.finalization.ComputerFinalizationStrategy');
238
+ }
239
+ }
240
+
210
241
  class AdjacentToIncidentStrategy extends TraversalStrategy {
211
242
  constructor() {
212
243
  super('org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.AdjacentToIncidentStrategy');
213
244
  }
214
245
  }
215
246
 
247
+ class ByModulatorOptimizationStrategy extends TraversalStrategy {
248
+ constructor() {
249
+ super('org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ByModulatorOptimizationStrategy');
250
+ }
251
+ }
252
+
216
253
  class FilterRankingStrategy extends TraversalStrategy {
217
254
  constructor() {
218
255
  super('org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.FilterRankingStrategy');
@@ -267,6 +304,17 @@ class PathRetractionStrategy extends TraversalStrategy {
267
304
  }
268
305
  }
269
306
 
307
+ class ProductiveByStrategy extends TraversalStrategy {
308
+ /**
309
+ * @param {Object} [options]
310
+ * @param {Array&lt;String>} productiveKeys set of keys that will always be productive
311
+ */
312
+ constructor({ productiveKeys = [] } = {}) {
313
+ super('org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.ProductiveByStrategy');
314
+ this.configuration['productiveKeys'] = productiveKeys;
315
+ }
316
+ }
317
+
270
318
  class CountStrategy extends TraversalStrategy {
271
319
  constructor() {
272
320
  super('org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.CountStrategy');
@@ -281,7 +329,7 @@ class RepeatUnrollStrategy extends TraversalStrategy {
281
329
 
282
330
  class GraphFilterStrategy extends TraversalStrategy {
283
331
  constructor() {
284
- super('org.apache.tinkerpop.gremlin.process.traversal.strategy.optimization.GraphFilterStrategy');
332
+ super('org.apache.tinkerpop.gremlin.process.computer.traversal.strategy.optimization.GraphFilterStrategy');
285
333
  }
286
334
  }
287
335
 
@@ -291,6 +339,12 @@ class EarlyLimitStrategy extends TraversalStrategy {
291
339
  }
292
340
  }
293
341
 
342
+ class ComputerVerificationStrategy extends TraversalStrategy {
343
+ constructor() {
344
+ super('org.apache.tinkerpop.gremlin.process.traversal.strategy.verification.ComputerVerificationStrategy');
345
+ }
346
+ }
347
+
294
348
  class LambdaRestrictionStrategy extends TraversalStrategy {
295
349
  constructor() {
296
350
  super('org.apache.tinkerpop.gremlin.process.traversal.strategy.verification.LambdaRestrictionStrategy');
@@ -308,11 +362,10 @@ class EdgeLabelVerificationStrategy extends TraversalStrategy {
308
362
  * @param {boolean} logWarnings determines if warnings should be written to the logger when verification fails
309
363
  * @param {boolean} throwException determines if exceptions should be thrown when verifications fails
310
364
  */
311
- constructor(logWarnings = false, throwException = false) {
312
- super('org.apache.tinkerpop.gremlin.process.traversal.strategy.verification.EdgeLabelVerificationStrategy', {
313
- logWarnings: logWarnings,
314
- throwException: throwException,
315
- });
365
+ constructor({ logWarnings = false, throwException = false } = {}) {
366
+ super('org.apache.tinkerpop.gremlin.process.traversal.strategy.verification.EdgeLabelVerificationStrategy');
367
+ this.configuration['logWarnings'] = logWarnings;
368
+ this.configuration['throwException'] = throwException;
316
369
  }
317
370
  }
318
371
 
@@ -322,24 +375,25 @@ class ReservedKeysVerificationStrategy extends TraversalStrategy {
322
375
  * @param {boolean} throwException determines if exceptions should be thrown when verifications fails
323
376
  * @param {Array&lt;String>} keys the list of reserved keys to verify
324
377
  */
325
- constructor(logWarnings = false, throwException = false, keys = ['id', 'label']) {
326
- super('org.apache.tinkerpop.gremlin.process.traversal.strategy.verification.ReservedKeysVerificationStrategy', {
327
- logWarnings: logWarnings,
328
- throwException: throwException,
329
- keys: keys,
330
- });
378
+ constructor({ logWarnings = false, throwException = false, keys = ['id', 'label'] } = {}) {
379
+ super('org.apache.tinkerpop.gremlin.process.traversal.strategy.verification.ReservedKeysVerificationStrategy');
380
+ this.configuration['logWarnings'] = logWarnings;
381
+ this.configuration['throwException'] = throwException;
382
+ this.configuration['keys'] = keys;
331
383
  }
332
384
  }
333
385
 
334
- class SeedStrategy extends TraversalStrategy {
335
- /**
336
- * @param {Object} [options]
337
- * @param {number} [options.seed] the seed to provide to the random number generator for the traversal
338
- */
339
- constructor(options) {
340
- super('org.apache.tinkerpop.gremlin.process.traversal.strategy.decoration.SeedStrategy', {
341
- seed: options.seed,
342
- });
386
+ class VertexProgramRestrictionStrategy extends TraversalStrategy {
387
+ constructor() {
388
+ super(
389
+ 'org.apache.tinkerpop.gremlin.process.computer.traversal.strategy.verification.VertexProgramRestrictionStrategy',
390
+ );
391
+ }
392
+ }
393
+
394
+ class StandardVerificationStrategy extends TraversalStrategy {
395
+ constructor() {
396
+ super('org.apache.tinkerpop.gremlin.process.traversal.strategy.verification.StandardVerificationStrategy');
343
397
  }
344
398
  }
345
399
 
@@ -347,11 +401,15 @@ module.exports = {
347
401
  TraversalStrategies: TraversalStrategies,
348
402
  TraversalStrategy: TraversalStrategy,
349
403
  // decoration
404
+ ComputerFinalizationStrategy: ComputerFinalizationStrategy,
350
405
  ConnectiveStrategy: ConnectiveStrategy,
351
406
  ElementIdStrategy: ElementIdStrategy,
352
407
  HaltedTraverserStrategy: HaltedTraverserStrategy,
408
+ MessagePassingReductionStrategy: MessagePassingReductionStrategy,
353
409
  OptionsStrategy: OptionsStrategy,
354
410
  PartitionStrategy: PartitionStrategy,
411
+ ProfileStrategy: ProfileStrategy,
412
+ ReferenceElementStrategy: ReferenceElementStrategy,
355
413
  SeedStrategy: SeedStrategy,
356
414
  SubgraphStrategy: SubgraphStrategy,
357
415
  VertexProgramStrategy: VertexProgramStrategy,
@@ -359,6 +417,7 @@ module.exports = {
359
417
  MatchAlgorithmStrategy: MatchAlgorithmStrategy,
360
418
  // optimization
361
419
  AdjacentToIncidentStrategy: AdjacentToIncidentStrategy,
420
+ ByModulatorOptimizationStrategy: ByModulatorOptimizationStrategy,
362
421
  FilterRankingStrategy: FilterRankingStrategy,
363
422
  IdentityRemovalStrategy: IdentityRemovalStrategy,
364
423
  IncidentToAdjacentStrategy: IncidentToAdjacentStrategy,
@@ -374,10 +433,13 @@ module.exports = {
374
433
  GraphFilterStrategy: GraphFilterStrategy,
375
434
  EarlyLimitStrategy: EarlyLimitStrategy,
376
435
  // verification
436
+ ComputerVerificationStrategy: ComputerVerificationStrategy,
377
437
  EdgeLabelVerificationStrategy: EdgeLabelVerificationStrategy,
378
438
  LambdaRestrictionStrategy: LambdaRestrictionStrategy,
379
439
  ReadOnlyStrategy: ReadOnlyStrategy,
380
440
  ReservedKeysVerificationStrategy: ReservedKeysVerificationStrategy,
441
+ StandardVerificationStrategy: StandardVerificationStrategy,
442
+ VertexProgramRestrictionStrategy: VertexProgramRestrictionStrategy,
381
443
  };
382
444
  </code></pre>
383
445
  </article>
@@ -389,13 +451,13 @@ module.exports = {
389
451
  </div>
390
452
 
391
453
  <nav>
392
- <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="AnonymousTraversalSource.html">AnonymousTraversalSource</a></li><li><a href="Authenticator.html">Authenticator</a></li><li><a href="Bytecode.html">Bytecode</a></li><li><a href="CardinalityValue.html">CardinalityValue</a></li><li><a href="Client.html">Client</a></li><li><a href="Connection.html">Connection</a></li><li><a href="DriverRemoteConnection.html">DriverRemoteConnection</a></li><li><a href="EdgeLabelVerificationStrategy.html">EdgeLabelVerificationStrategy</a></li><li><a href="Graph.html">Graph</a></li><li><a href="GraphSON2Reader.html">GraphSON2Reader</a></li><li><a href="GraphSON2Writer.html">GraphSON2Writer</a></li><li><a href="GraphSON3Reader.html">GraphSON3Reader</a></li><li><a href="GraphSON3Writer.html">GraphSON3Writer</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="HaltedTraverserStrategy.html">HaltedTraverserStrategy</a></li><li><a href="MatchAlgorithmStrategy.html">MatchAlgorithmStrategy</a></li><li><a href="module.exports.html">exports</a></li><li><a href="P.html">P</a></li><li><a href="PartitionStrategy.html">PartitionStrategy</a></li><li><a href="Path.html">Path</a></li><li><a href="PlainTextSaslAuthenticator.html">PlainTextSaslAuthenticator</a></li><li><a href="ProductiveByStrategy.html">ProductiveByStrategy</a></li><li><a href="RemoteConnection.html">RemoteConnection</a></li><li><a href="RemoteStrategy.html">RemoteStrategy</a></li><li><a href="RemoteTraversal.html">RemoteTraversal</a></li><li><a href="ReservedKeysVerificationStrategy.html">ReservedKeysVerificationStrategy</a></li><li><a href="ResponseError.html">ResponseError</a></li><li><a href="ResultSet.html">ResultSet</a></li><li><a href="SaslAuthenticator.html">SaslAuthenticator</a></li><li><a href="SaslMechanismBase.html">SaslMechanismBase</a></li><li><a href="SaslMechanismPlain.html">SaslMechanismPlain</a></li><li><a href="SeedStrategy.html">SeedStrategy</a></li><li><a href="SubgraphStrategy.html">SubgraphStrategy</a></li><li><a href="TextP.html">TextP</a></li><li><a href="Transaction.html">Transaction</a></li><li><a href="Translator.html">Translator</a></li><li><a href="TraversalStrategies.html">TraversalStrategies</a></li><li><a href="TraversalStrategy.html">TraversalStrategy</a></li><li><a href="TypeSerializer.html">TypeSerializer</a></li></ul><h3>Global</h3><ul><li><a href="global.html#DataType">DataType</a></li><li><a href="global.html#statics">statics</a></li><li><a href="global.html#toArrayBuffer">toArrayBuffer</a></li></ul>
454
+ <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="AnonymousTraversalSource.html">AnonymousTraversalSource</a></li><li><a href="Authenticator.html">Authenticator</a></li><li><a href="Bytecode.html">Bytecode</a></li><li><a href="CardinalityValue.html">CardinalityValue</a></li><li><a href="Client.html">Client</a></li><li><a href="Connection.html">Connection</a></li><li><a href="DriverRemoteConnection.html">DriverRemoteConnection</a></li><li><a href="EdgeLabelVerificationStrategy.html">EdgeLabelVerificationStrategy</a></li><li><a href="Graph.html">Graph</a></li><li><a href="GraphSON2Reader.html">GraphSON2Reader</a></li><li><a href="GraphSON2Writer.html">GraphSON2Writer</a></li><li><a href="GraphSON3Reader.html">GraphSON3Reader</a></li><li><a href="GraphSON3Writer.html">GraphSON3Writer</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="HaltedTraverserStrategy.html">HaltedTraverserStrategy</a></li><li><a href="MatchAlgorithmStrategy.html">MatchAlgorithmStrategy</a></li><li><a href="module.exports.html">exports</a></li><li><a href="P.html">P</a></li><li><a href="PartitionStrategy.html">PartitionStrategy</a></li><li><a href="Path.html">Path</a></li><li><a href="PlainTextSaslAuthenticator.html">PlainTextSaslAuthenticator</a></li><li><a href="ProductiveByStrategy.html">ProductiveByStrategy</a></li><li><a href="RemoteConnection.html">RemoteConnection</a></li><li><a href="RemoteStrategy.html">RemoteStrategy</a></li><li><a href="RemoteTraversal.html">RemoteTraversal</a></li><li><a href="ReservedKeysVerificationStrategy.html">ReservedKeysVerificationStrategy</a></li><li><a href="ResponseError.html">ResponseError</a></li><li><a href="ResultSet.html">ResultSet</a></li><li><a href="SaslAuthenticator.html">SaslAuthenticator</a></li><li><a href="SaslMechanismBase.html">SaslMechanismBase</a></li><li><a href="SaslMechanismPlain.html">SaslMechanismPlain</a></li><li><a href="SeedStrategy.html">SeedStrategy</a></li><li><a href="SubgraphStrategy.html">SubgraphStrategy</a></li><li><a href="TextP.html">TextP</a></li><li><a href="Transaction.html">Transaction</a></li><li><a href="Translator.html">Translator</a></li><li><a href="TraversalStrategies.html">TraversalStrategies</a></li><li><a href="TraversalStrategy.html">TraversalStrategy</a></li><li><a href="TypeSerializer.html">TypeSerializer</a></li></ul><h3>Global</h3><ul><li><a href="global.html#DataType">DataType</a></li><li><a href="global.html#deserializeProperties">deserializeProperties</a></li><li><a href="global.html#statics">statics</a></li><li><a href="global.html#toArrayBuffer">toArrayBuffer</a></li></ul>
393
455
  </nav>
394
456
 
395
457
  <br class="clear">
396
458
 
397
459
  <footer>
398
- Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Mon Nov 17 2025 10:18:37 GMT-0800 (Pacific Standard Time)
460
+ Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Mon Nov 17 2025 15:09:27 GMT-0800 (Pacific Standard Time)
399
461
  </footer>
400
462
 
401
463
  <script> prettyPrint(); </script>
@@ -112,7 +112,7 @@ class Traversal {
112
112
  * @returns {Promise}
113
113
  */
114
114
  iterate() {
115
- this.bytecode.addStep('none');
115
+ this.bytecode.addStep('discard');
116
116
  return this._applyStrategies().then(() => {
117
117
  let it;
118
118
  while ((it = this._getNext()) &amp;&amp; !it.done) {
@@ -373,6 +373,11 @@ class P {
373
373
  return createP('outside', args);
374
374
  }
375
375
 
376
+ /** @param {...Object} args */
377
+ static typeOf(...args) {
378
+ return createP('typeOf', args);
379
+ }
380
+
376
381
  /** @param {...Object} args */
377
382
  static test(...args) {
378
383
  return createP('test', args);
@@ -515,6 +520,14 @@ function toDirectionEnum(typeName, keys) {
515
520
  return result;
516
521
  }
517
522
 
523
+ function toGTypeEnum(typeName, keys) {
524
+ const result = {};
525
+ keys.split(' ').forEach((k) => {
526
+ result[k] = new EnumValue(typeName, k.toUpperCase());
527
+ });
528
+ return result;
529
+ }
530
+
518
531
  class EnumValue {
519
532
  constructor(typeName, elementName) {
520
533
  this.typeName = typeName;
@@ -540,12 +553,16 @@ module.exports = {
540
553
  column: toEnum('Column', 'keys values'),
541
554
  direction: toDirectionEnum('Direction', 'BOTH IN OUT from_ to'),
542
555
  dt: toEnum('DT', 'second minute hour day'),
556
+ gType: toGTypeEnum(
557
+ 'GType',
558
+ 'bigDecimal bigInt binary boolean byte char datetime double duration edge float graph int list long map null number path property set short string tree uuid vertex vproperty',
559
+ ),
543
560
  graphSONVersion: toEnum('GraphSONVersion', 'V1_0 V2_0 V3_0'),
544
561
  gryoVersion: toEnum('GryoVersion', 'V1_0 V3_0'),
545
562
  merge: toEnum('Merge', 'onCreate onMatch outV inV'),
546
563
  operator: toEnum('Operator', 'addAll and assign div max min minus mult or sum sumLong'),
547
564
  order: toEnum('Order', 'asc desc shuffle'),
548
- pick: toEnum('Pick', 'any none'),
565
+ pick: toEnum('Pick', 'any none unproductive'),
549
566
  pop: toEnum('Pop', 'all first last mixed'),
550
567
  scope: toEnum('Scope', 'global local'),
551
568
  t: toEnum('T', 'id key label value'),
@@ -560,13 +577,13 @@ module.exports = {
560
577
  </div>
561
578
 
562
579
  <nav>
563
- <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="AnonymousTraversalSource.html">AnonymousTraversalSource</a></li><li><a href="Authenticator.html">Authenticator</a></li><li><a href="Bytecode.html">Bytecode</a></li><li><a href="CardinalityValue.html">CardinalityValue</a></li><li><a href="Client.html">Client</a></li><li><a href="Connection.html">Connection</a></li><li><a href="DriverRemoteConnection.html">DriverRemoteConnection</a></li><li><a href="EdgeLabelVerificationStrategy.html">EdgeLabelVerificationStrategy</a></li><li><a href="Graph.html">Graph</a></li><li><a href="GraphSON2Reader.html">GraphSON2Reader</a></li><li><a href="GraphSON2Writer.html">GraphSON2Writer</a></li><li><a href="GraphSON3Reader.html">GraphSON3Reader</a></li><li><a href="GraphSON3Writer.html">GraphSON3Writer</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="HaltedTraverserStrategy.html">HaltedTraverserStrategy</a></li><li><a href="MatchAlgorithmStrategy.html">MatchAlgorithmStrategy</a></li><li><a href="module.exports.html">exports</a></li><li><a href="P.html">P</a></li><li><a href="PartitionStrategy.html">PartitionStrategy</a></li><li><a href="Path.html">Path</a></li><li><a href="PlainTextSaslAuthenticator.html">PlainTextSaslAuthenticator</a></li><li><a href="ProductiveByStrategy.html">ProductiveByStrategy</a></li><li><a href="RemoteConnection.html">RemoteConnection</a></li><li><a href="RemoteStrategy.html">RemoteStrategy</a></li><li><a href="RemoteTraversal.html">RemoteTraversal</a></li><li><a href="ReservedKeysVerificationStrategy.html">ReservedKeysVerificationStrategy</a></li><li><a href="ResponseError.html">ResponseError</a></li><li><a href="ResultSet.html">ResultSet</a></li><li><a href="SaslAuthenticator.html">SaslAuthenticator</a></li><li><a href="SaslMechanismBase.html">SaslMechanismBase</a></li><li><a href="SaslMechanismPlain.html">SaslMechanismPlain</a></li><li><a href="SeedStrategy.html">SeedStrategy</a></li><li><a href="SubgraphStrategy.html">SubgraphStrategy</a></li><li><a href="TextP.html">TextP</a></li><li><a href="Transaction.html">Transaction</a></li><li><a href="Translator.html">Translator</a></li><li><a href="TraversalStrategies.html">TraversalStrategies</a></li><li><a href="TraversalStrategy.html">TraversalStrategy</a></li><li><a href="TypeSerializer.html">TypeSerializer</a></li></ul><h3>Global</h3><ul><li><a href="global.html#DataType">DataType</a></li><li><a href="global.html#statics">statics</a></li><li><a href="global.html#toArrayBuffer">toArrayBuffer</a></li></ul>
580
+ <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="AnonymousTraversalSource.html">AnonymousTraversalSource</a></li><li><a href="Authenticator.html">Authenticator</a></li><li><a href="Bytecode.html">Bytecode</a></li><li><a href="CardinalityValue.html">CardinalityValue</a></li><li><a href="Client.html">Client</a></li><li><a href="Connection.html">Connection</a></li><li><a href="DriverRemoteConnection.html">DriverRemoteConnection</a></li><li><a href="EdgeLabelVerificationStrategy.html">EdgeLabelVerificationStrategy</a></li><li><a href="Graph.html">Graph</a></li><li><a href="GraphSON2Reader.html">GraphSON2Reader</a></li><li><a href="GraphSON2Writer.html">GraphSON2Writer</a></li><li><a href="GraphSON3Reader.html">GraphSON3Reader</a></li><li><a href="GraphSON3Writer.html">GraphSON3Writer</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="HaltedTraverserStrategy.html">HaltedTraverserStrategy</a></li><li><a href="MatchAlgorithmStrategy.html">MatchAlgorithmStrategy</a></li><li><a href="module.exports.html">exports</a></li><li><a href="P.html">P</a></li><li><a href="PartitionStrategy.html">PartitionStrategy</a></li><li><a href="Path.html">Path</a></li><li><a href="PlainTextSaslAuthenticator.html">PlainTextSaslAuthenticator</a></li><li><a href="ProductiveByStrategy.html">ProductiveByStrategy</a></li><li><a href="RemoteConnection.html">RemoteConnection</a></li><li><a href="RemoteStrategy.html">RemoteStrategy</a></li><li><a href="RemoteTraversal.html">RemoteTraversal</a></li><li><a href="ReservedKeysVerificationStrategy.html">ReservedKeysVerificationStrategy</a></li><li><a href="ResponseError.html">ResponseError</a></li><li><a href="ResultSet.html">ResultSet</a></li><li><a href="SaslAuthenticator.html">SaslAuthenticator</a></li><li><a href="SaslMechanismBase.html">SaslMechanismBase</a></li><li><a href="SaslMechanismPlain.html">SaslMechanismPlain</a></li><li><a href="SeedStrategy.html">SeedStrategy</a></li><li><a href="SubgraphStrategy.html">SubgraphStrategy</a></li><li><a href="TextP.html">TextP</a></li><li><a href="Transaction.html">Transaction</a></li><li><a href="Translator.html">Translator</a></li><li><a href="TraversalStrategies.html">TraversalStrategies</a></li><li><a href="TraversalStrategy.html">TraversalStrategy</a></li><li><a href="TypeSerializer.html">TypeSerializer</a></li></ul><h3>Global</h3><ul><li><a href="global.html#DataType">DataType</a></li><li><a href="global.html#deserializeProperties">deserializeProperties</a></li><li><a href="global.html#statics">statics</a></li><li><a href="global.html#toArrayBuffer">toArrayBuffer</a></li></ul>
564
581
  </nav>
565
582
 
566
583
  <br class="clear">
567
584
 
568
585
  <footer>
569
- Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Mon Nov 17 2025 10:18:37 GMT-0800 (Pacific Standard Time)
586
+ Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Mon Nov 17 2025 15:09:27 GMT-0800 (Pacific Standard Time)
570
587
  </footer>
571
588
 
572
589
  <script> prettyPrint(); </script>