gremlin 3.6.6 → 3.7.1

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 (78) hide show
  1. package/doc/AnonymousTraversalSource.html +2 -2
  2. package/doc/Authenticator.html +2 -2
  3. package/doc/Bytecode.html +2 -2
  4. package/doc/CardinalityValue.html +1 -1
  5. package/doc/Client.html +42 -9
  6. package/doc/Connection.html +10 -10
  7. package/doc/DriverRemoteConnection.html +45 -12
  8. package/doc/EdgeLabelVerificationStrategy.html +2 -2
  9. package/doc/Graph.html +2 -2
  10. package/doc/GraphSON2Reader.html +2 -2
  11. package/doc/GraphSON2Writer.html +2 -2
  12. package/doc/GraphSON3Reader.html +2 -2
  13. package/doc/GraphSON3Writer.html +2 -2
  14. package/doc/GraphTraversal.html +4650 -308
  15. package/doc/GraphTraversalSource.html +169 -2
  16. package/doc/HaltedTraverserStrategy.html +2 -2
  17. package/doc/MatchAlgorithmStrategy.html +2 -2
  18. package/doc/P.html +2 -2
  19. package/doc/PartitionStrategy.html +2 -2
  20. package/doc/Path.html +2 -2
  21. package/doc/PlainTextSaslAuthenticator.html +2 -2
  22. package/doc/ProductiveByStrategy.html +2 -2
  23. package/doc/RemoteConnection.html +2 -2
  24. package/doc/RemoteStrategy.html +2 -2
  25. package/doc/RemoteTraversal.html +2 -2
  26. package/doc/ReservedKeysVerificationStrategy.html +2 -2
  27. package/doc/ResponseError.html +2 -2
  28. package/doc/ResultSet.html +2 -2
  29. package/doc/SaslAuthenticator.html +2 -2
  30. package/doc/SaslMechanismBase.html +2 -2
  31. package/doc/SaslMechanismPlain.html +2 -2
  32. package/doc/SeedStrategy.html +2 -2
  33. package/doc/SubgraphStrategy.html +2 -2
  34. package/doc/TextP.html +2 -2
  35. package/doc/Transaction.html +2 -2
  36. package/doc/Translator.html +2 -2
  37. package/doc/TraversalStrategies.html +2 -2
  38. package/doc/TraversalStrategy.html +2 -2
  39. package/doc/TypeSerializer.html +2 -2
  40. package/doc/driver_auth_authenticator.js.html +2 -2
  41. package/doc/driver_auth_mechanisms_sasl-mechanism-base.js.html +2 -2
  42. package/doc/driver_auth_mechanisms_sasl-mechanism-plain.js.html +2 -2
  43. package/doc/driver_auth_plain-text-sasl-authenticator.js.html +2 -2
  44. package/doc/driver_auth_sasl-authenticator.js.html +2 -2
  45. package/doc/driver_client.js.html +4 -2
  46. package/doc/driver_connection.js.html +4 -9
  47. package/doc/driver_driver-remote-connection.js.html +11 -3
  48. package/doc/driver_remote-connection.js.html +2 -2
  49. package/doc/driver_response-error.js.html +2 -2
  50. package/doc/driver_result-set.js.html +2 -2
  51. package/doc/global.html +27 -4
  52. package/doc/index.html +2 -2
  53. package/doc/module.exports.html +2 -2
  54. package/doc/process_anonymous-traversal.js.html +2 -2
  55. package/doc/process_bytecode.js.html +2 -2
  56. package/doc/process_graph-traversal.js.html +332 -3
  57. package/doc/process_transaction.js.html +2 -2
  58. package/doc/process_translator.js.html +2 -2
  59. package/doc/process_traversal-strategy.js.html +2 -2
  60. package/doc/process_traversal.js.html +3 -2
  61. package/doc/structure_graph.js.html +2 -2
  62. package/doc/structure_io_binary_internals_DataType.js.html +3 -2
  63. package/doc/structure_io_binary_internals_GraphBinaryReader.js.html +2 -2
  64. package/doc/structure_io_binary_internals_GraphBinaryWriter.js.html +2 -2
  65. package/doc/structure_io_graph-serializer.js.html +2 -2
  66. package/doc/structure_io_type-serializers.js.html +2 -2
  67. package/docker-compose.yml +7 -2
  68. package/index.js +1 -0
  69. package/lib/driver/client.js +2 -0
  70. package/lib/driver/connection.js +2 -7
  71. package/lib/driver/driver-remote-connection.js +9 -1
  72. package/lib/process/graph-traversal.js +330 -1
  73. package/lib/process/traversal.js +1 -0
  74. package/lib/structure/io/binary/internals/DataType.js +1 -0
  75. package/lib/structure/io/binary/internals/EnumSerializer.js +1 -0
  76. package/lib/structure/io/binary/internals/VertexPropertySerializer.js +1 -1
  77. package/lib/utils.js +1 -1
  78. package/package.json +2 -2
@@ -22,7 +22,7 @@
22
22
  */
23
23
  'use strict';
24
24
 
25
- const { Traversal } = require('./traversal');
25
+ const { Traversal, cardinality } = require('./traversal');
26
26
  const { Transaction } = require('./transaction');
27
27
  const remote = require('../driver/remote-connection');
28
28
  const Bytecode = require('./bytecode');
@@ -337,6 +337,16 @@ class GraphTraversalSource {
337
337
  const b = new Bytecode(this.bytecode).addStep('call', args);
338
338
  return new this.graphTraversalClass(this.graph, new TraversalStrategies(this.traversalStrategies), b);
339
339
  }
340
+
341
+ /**
342
+ * union GraphTraversalSource method.
343
+ * @param {...Object} args
344
+ * @returns {GraphTraversal}
345
+ */
346
+ union(...args) {
347
+ const b = new Bytecode(this.bytecode).addStep('union', args);
348
+ return new this.graphTraversalClass(this.graph, new TraversalStrategies(this.traversalStrategies), b);
349
+ }
340
350
  }
341
351
 
342
352
  /**
@@ -364,6 +374,16 @@ class GraphTraversal extends Traversal {
364
374
  return this;
365
375
  }
366
376
 
377
+ /**
378
+ * Graph traversal E method.
379
+ * @param {...Object} args
380
+ * @returns {GraphTraversal}
381
+ */
382
+ E(...args) {
383
+ this.bytecode.addStep('E', args);
384
+ return this;
385
+ }
386
+
367
387
  /**
368
388
  * Graph traversal addE method.
369
389
  * @param {...Object} args
@@ -394,6 +414,16 @@ class GraphTraversal extends Traversal {
394
414
  return this;
395
415
  }
396
416
 
417
+ /**
418
+ * Graph traversal all method.
419
+ * @param {...Object} args
420
+ * @returns {GraphTraversal}
421
+ */
422
+ all(...args) {
423
+ this.bytecode.addStep('all', args);
424
+ return this;
425
+ }
426
+
397
427
  /**
398
428
  * Graph traversal and method.
399
429
  * @param {...Object} args
@@ -404,6 +434,16 @@ class GraphTraversal extends Traversal {
404
434
  return this;
405
435
  }
406
436
 
437
+ /**
438
+ * Graph traversal any method.
439
+ * @param {...Object} args
440
+ * @returns {GraphTraversal}
441
+ */
442
+ any(...args) {
443
+ this.bytecode.addStep('any', args);
444
+ return this;
445
+ }
446
+
407
447
  /**
408
448
  * Graph traversal as method.
409
449
  * @param {...Object} args
@@ -414,6 +454,26 @@ class GraphTraversal extends Traversal {
414
454
  return this;
415
455
  }
416
456
 
457
+ /**
458
+ * Graph traversal asDate method.
459
+ * @param {...Object} args
460
+ * @returns {GraphTraversal}
461
+ */
462
+ asDate(...args) {
463
+ this.bytecode.addStep('asDate', args);
464
+ return this;
465
+ }
466
+
467
+ /**
468
+ * Graph traversal asString method.
469
+ * @param {...Object} args
470
+ * @returns {GraphTraversal}
471
+ */
472
+ asString(...args) {
473
+ this.bytecode.addStep('asString', args);
474
+ return this;
475
+ }
476
+
417
477
  /**
418
478
  * Graph traversal barrier method.
419
479
  * @param {...Object} args
@@ -523,6 +583,36 @@ class GraphTraversal extends Traversal {
523
583
  return this;
524
584
  }
525
585
 
586
+ /**
587
+ * Graph traversal combine method.
588
+ * @param {...Object} args
589
+ * @returns {GraphTraversal}
590
+ */
591
+ combine(...args) {
592
+ this.bytecode.addStep('combine', args);
593
+ return this;
594
+ }
595
+
596
+ /**
597
+ * Graph traversal concat method.
598
+ * @param {...Object} args
599
+ * @returns {GraphTraversal}
600
+ */
601
+ concat(...args) {
602
+ this.bytecode.addStep('concat', args);
603
+ return this;
604
+ }
605
+
606
+ /**
607
+ * Graph traversal conjoin method.
608
+ * @param {...Object} args
609
+ * @returns {GraphTraversal}
610
+ */
611
+ conjoin(...args) {
612
+ this.bytecode.addStep('conjoin', args);
613
+ return this;
614
+ }
615
+
526
616
  /**
527
617
  * Graph traversal connectedComponent method.
528
618
  * @param {...Object} args
@@ -563,6 +653,26 @@ class GraphTraversal extends Traversal {
563
653
  return this;
564
654
  }
565
655
 
656
+ /**
657
+ * Graph traversal dateAdd method.
658
+ * @param {...Object} args
659
+ * @returns {GraphTraversal}
660
+ */
661
+ dateAdd(...args) {
662
+ this.bytecode.addStep('dateAdd', args);
663
+ return this;
664
+ }
665
+
666
+ /**
667
+ * Graph traversal dateDiff method.
668
+ * @param {...Object} args
669
+ * @returns {GraphTraversal}
670
+ */
671
+ dateDiff(...args) {
672
+ this.bytecode.addStep('dateDiff', args);
673
+ return this;
674
+ }
675
+
566
676
  /**
567
677
  * Graph traversal dedup method.
568
678
  * @param {...Object} args
@@ -573,6 +683,26 @@ class GraphTraversal extends Traversal {
573
683
  return this;
574
684
  }
575
685
 
686
+ /**
687
+ * Graph traversal difference method.
688
+ * @param {...Object} args
689
+ * @returns {GraphTraversal}
690
+ */
691
+ difference(...args) {
692
+ this.bytecode.addStep('difference', args);
693
+ return this;
694
+ }
695
+
696
+ /**
697
+ * Graph traversal disjunct method.
698
+ * @param {...Object} args
699
+ * @returns {GraphTraversal}
700
+ */
701
+ disjunct(...args) {
702
+ this.bytecode.addStep('disjunct', args);
703
+ return this;
704
+ }
705
+
576
706
  /**
577
707
  * Graph traversal drop method.
578
708
  * @param {...Object} args
@@ -652,6 +782,16 @@ class GraphTraversal extends Traversal {
652
782
  return this;
653
783
  }
654
784
 
785
+ /**
786
+ * Graph traversal format method.
787
+ * @param {...Object} args
788
+ * @returns {GraphTraversal}
789
+ */
790
+ format(...args) {
791
+ this.bytecode.addStep('format', args);
792
+ return this;
793
+ }
794
+
655
795
  /**
656
796
  * Graph traversal from method.
657
797
  * @param {...Object} args
@@ -812,6 +952,16 @@ class GraphTraversal extends Traversal {
812
952
  return this;
813
953
  }
814
954
 
955
+ /**
956
+ * Graph traversal intersect method.
957
+ * @param {...Object} args
958
+ * @returns {GraphTraversal}
959
+ */
960
+ intersect(...args) {
961
+ this.bytecode.addStep('intersect', args);
962
+ return this;
963
+ }
964
+
815
965
  /**
816
966
  * Graph traversal is method.
817
967
  * @param {...Object} args
@@ -842,6 +992,16 @@ class GraphTraversal extends Traversal {
842
992
  return this;
843
993
  }
844
994
 
995
+ /**
996
+ * Graph traversal length method.
997
+ * @param {...Object} args
998
+ * @returns {GraphTraversal}
999
+ */
1000
+ length(...args) {
1001
+ this.bytecode.addStep('length', args);
1002
+ return this;
1003
+ }
1004
+
845
1005
  /**
846
1006
  * Graph traversal limit method.
847
1007
  * @param {...Object} args
@@ -872,6 +1032,16 @@ class GraphTraversal extends Traversal {
872
1032
  return this;
873
1033
  }
874
1034
 
1035
+ /**
1036
+ * Graph traversal lTrim method.
1037
+ * @param {...Object} args
1038
+ * @returns {GraphTraversal}
1039
+ */
1040
+ lTrim(...args) {
1041
+ this.bytecode.addStep('lTrim', args);
1042
+ return this;
1043
+ }
1044
+
875
1045
  /**
876
1046
  * Graph traversal map method.
877
1047
  * @param {...Object} args
@@ -922,6 +1092,16 @@ class GraphTraversal extends Traversal {
922
1092
  return this;
923
1093
  }
924
1094
 
1095
+ /**
1096
+ * Graph traversal merge method.
1097
+ * @param {...Object} args
1098
+ * @returns {GraphTraversal}
1099
+ */
1100
+ merge(...args) {
1101
+ this.bytecode.addStep('merge', args);
1102
+ return this;
1103
+ }
1104
+
925
1105
  /**
926
1106
  * Graph traversal mergeE method.
927
1107
  * @param {...Object} args
@@ -1082,6 +1262,16 @@ class GraphTraversal extends Traversal {
1082
1262
  return this;
1083
1263
  }
1084
1264
 
1265
+ /**
1266
+ * Graph traversal product method.
1267
+ * @param {...Object} args
1268
+ * @returns {GraphTraversal}
1269
+ */
1270
+ product(...args) {
1271
+ this.bytecode.addStep('product', args);
1272
+ return this;
1273
+ }
1274
+
1085
1275
  /**
1086
1276
  * Graph traversal profile method.
1087
1277
  * @param {...Object} args
@@ -1172,6 +1362,36 @@ class GraphTraversal extends Traversal {
1172
1362
  return this;
1173
1363
  }
1174
1364
 
1365
+ /**
1366
+ * Graph traversal replace method.
1367
+ * @param {...Object} args
1368
+ * @returns {GraphTraversal}
1369
+ */
1370
+ replace(...args) {
1371
+ this.bytecode.addStep('replace', args);
1372
+ return this;
1373
+ }
1374
+
1375
+ /**
1376
+ * Graph traversal reverse method.
1377
+ * @param {...Object} args
1378
+ * @returns {GraphTraversal}
1379
+ */
1380
+ reverse(...args) {
1381
+ this.bytecode.addStep('reverse', args);
1382
+ return this;
1383
+ }
1384
+
1385
+ /**
1386
+ * Graph traversal rTrim method.
1387
+ * @param {...Object} args
1388
+ * @returns {GraphTraversal}
1389
+ */
1390
+ rTrim(...args) {
1391
+ this.bytecode.addStep('rTrim', args);
1392
+ return this;
1393
+ }
1394
+
1175
1395
  /**
1176
1396
  * Graph traversal sack method.
1177
1397
  * @param {...Object} args
@@ -1242,6 +1462,16 @@ class GraphTraversal extends Traversal {
1242
1462
  return this;
1243
1463
  }
1244
1464
 
1465
+ /**
1466
+ * Graph traversal split method.
1467
+ * @param {...Object} args
1468
+ * @returns {GraphTraversal}
1469
+ */
1470
+ split(...args) {
1471
+ this.bytecode.addStep('split', args);
1472
+ return this;
1473
+ }
1474
+
1245
1475
  /**
1246
1476
  * Graph traversal store method.
1247
1477
  * @param {...Object} args
@@ -1262,6 +1492,16 @@ class GraphTraversal extends Traversal {
1262
1492
  return this;
1263
1493
  }
1264
1494
 
1495
+ /**
1496
+ * Graph traversal subgraph method.
1497
+ * @param {...Object} args
1498
+ * @returns {GraphTraversal}
1499
+ */
1500
+ substring(...args) {
1501
+ this.bytecode.addStep('substring', args);
1502
+ return this;
1503
+ }
1504
+
1265
1505
  /**
1266
1506
  * Graph traversal sum method.
1267
1507
  * @param {...Object} args
@@ -1322,6 +1562,26 @@ class GraphTraversal extends Traversal {
1322
1562
  return this;
1323
1563
  }
1324
1564
 
1565
+ /**
1566
+ * Graph traversal toLower method.
1567
+ * @param {...Object} args
1568
+ * @returns {GraphTraversal}
1569
+ */
1570
+ toLower(...args) {
1571
+ this.bytecode.addStep('toLower', args);
1572
+ return this;
1573
+ }
1574
+
1575
+ /**
1576
+ * Graph traversal toUpper method.
1577
+ * @param {...Object} args
1578
+ * @returns {GraphTraversal}
1579
+ */
1580
+ toUpper(...args) {
1581
+ this.bytecode.addStep('toUpper', args);
1582
+ return this;
1583
+ }
1584
+
1325
1585
  /**
1326
1586
  * Graph traversal toV method.
1327
1587
  * @param {...Object} args
@@ -1342,6 +1602,16 @@ class GraphTraversal extends Traversal {
1342
1602
  return this;
1343
1603
  }
1344
1604
 
1605
+ /**
1606
+ * Graph traversal trim method.
1607
+ * @param {...Object} args
1608
+ * @returns {GraphTraversal}
1609
+ */
1610
+ trim(...args) {
1611
+ this.bytecode.addStep('trim', args);
1612
+ return this;
1613
+ }
1614
+
1345
1615
  /**
1346
1616
  * Graph traversal unfold method.
1347
1617
  * @param {...Object} args
@@ -1433,6 +1703,45 @@ class GraphTraversal extends Traversal {
1433
1703
  }
1434
1704
  }
1435
1705
 
1706
+ class CardinalityValue extends Bytecode {
1707
+ /**
1708
+ * Creates a new instance of {@link CardinalityValue}.
1709
+ * @param {String} card
1710
+ * @param {Object} value
1711
+ */
1712
+ constructor(card, value) {
1713
+ super();
1714
+ this.addSource('CardinalityValueTraversal', [card, value]);
1715
+ }
1716
+
1717
+ /**
1718
+ * Create a value with single cardinality.
1719
+ * @param {Array} value
1720
+ * @returns {CardinalityValue}
1721
+ */
1722
+ static single(value) {
1723
+ return new CardinalityValue(cardinality.single, value);
1724
+ }
1725
+
1726
+ /**
1727
+ * Create a value with list cardinality.
1728
+ * @param {Array} value
1729
+ * @returns {CardinalityValue}
1730
+ */
1731
+ static list(value) {
1732
+ return new CardinalityValue(cardinality.list, value);
1733
+ }
1734
+
1735
+ /**
1736
+ * Create a value with set cardinality.
1737
+ * @param {Array} value
1738
+ * @returns {CardinalityValue}
1739
+ */
1740
+ static set(value) {
1741
+ return new CardinalityValue(cardinality.set, value);
1742
+ }
1743
+ }
1744
+
1436
1745
  function callOnEmptyTraversal(fnName, args) {
1437
1746
  const g = new GraphTraversal(null, null, new Bytecode());
1438
1747
  return g[fnName].apply(g, args);
@@ -1443,12 +1752,17 @@ function callOnEmptyTraversal(fnName, args) {
1443
1752
  * @type {Object}
1444
1753
  */
1445
1754
  const statics = {
1755
+ E: (...args) => callOnEmptyTraversal('E', args),
1446
1756
  V: (...args) => callOnEmptyTraversal('V', args),
1447
1757
  addE: (...args) => callOnEmptyTraversal('addE', args),
1448
1758
  addV: (...args) => callOnEmptyTraversal('addV', args),
1449
1759
  aggregate: (...args) => callOnEmptyTraversal('aggregate', args),
1760
+ all: (...args) => callOnEmptyTraversal('all', args),
1450
1761
  and: (...args) => callOnEmptyTraversal('and', args),
1762
+ any: (...args) => callOnEmptyTraversal('any', args),
1451
1763
  as: (...args) => callOnEmptyTraversal('as', args),
1764
+ asDate: (...args) => callOnEmptyTraversal('asDate', args),
1765
+ asString: (...args) => callOnEmptyTraversal('asString', args),
1452
1766
  barrier: (...args) => callOnEmptyTraversal('barrier', args),
1453
1767
  both: (...args) => callOnEmptyTraversal('both', args),
1454
1768
  bothE: (...args) => callOnEmptyTraversal('bothE', args),
@@ -1459,9 +1773,12 @@ const statics = {
1459
1773
  choose: (...args) => callOnEmptyTraversal('choose', args),
1460
1774
  coalesce: (...args) => callOnEmptyTraversal('coalesce', args),
1461
1775
  coin: (...args) => callOnEmptyTraversal('coin', args),
1776
+ concat: (...args) => callOnEmptyTraversal('concat', args),
1462
1777
  constant: (...args) => callOnEmptyTraversal('constant', args),
1463
1778
  count: (...args) => callOnEmptyTraversal('count', args),
1464
1779
  cyclicPath: (...args) => callOnEmptyTraversal('cyclicPath', args),
1780
+ dateAdd: (...args) => callOnEmptyTraversal('dateAdd', args),
1781
+ dateDiff: (...args) => callOnEmptyTraversal('dateDiff', args),
1465
1782
  dedup: (...args) => callOnEmptyTraversal('dedup', args),
1466
1783
  drop: (...args) => callOnEmptyTraversal('drop', args),
1467
1784
  element: (...args) => callOnEmptyTraversal('element', args),
@@ -1471,6 +1788,7 @@ const statics = {
1471
1788
  filter: (...args) => callOnEmptyTraversal('filter', args),
1472
1789
  flatMap: (...args) => callOnEmptyTraversal('flatMap', args),
1473
1790
  fold: (...args) => callOnEmptyTraversal('fold', args),
1791
+ format: (...args) => callOnEmptyTraversal('format', args),
1474
1792
  group: (...args) => callOnEmptyTraversal('group', args),
1475
1793
  groupCount: (...args) => callOnEmptyTraversal('groupCount', args),
1476
1794
  has: (...args) => callOnEmptyTraversal('has', args),
@@ -1489,9 +1807,11 @@ const statics = {
1489
1807
  is: (...args) => callOnEmptyTraversal('is', args),
1490
1808
  key: (...args) => callOnEmptyTraversal('key', args),
1491
1809
  label: (...args) => callOnEmptyTraversal('label', args),
1810
+ length: (...args) => callOnEmptyTraversal('length', args),
1492
1811
  limit: (...args) => callOnEmptyTraversal('limit', args),
1493
1812
  local: (...args) => callOnEmptyTraversal('local', args),
1494
1813
  loops: (...args) => callOnEmptyTraversal('loops', args),
1814
+ lTrim: (...args) => callOnEmptyTraversal('lTrim', args),
1495
1815
  map: (...args) => callOnEmptyTraversal('map', args),
1496
1816
  match: (...args) => callOnEmptyTraversal('match', args),
1497
1817
  math: (...args) => callOnEmptyTraversal('math', args),
@@ -1515,22 +1835,30 @@ const statics = {
1515
1835
  propertyMap: (...args) => callOnEmptyTraversal('propertyMap', args),
1516
1836
  range: (...args) => callOnEmptyTraversal('range', args),
1517
1837
  repeat: (...args) => callOnEmptyTraversal('repeat', args),
1838
+ replace: (...args) => callOnEmptyTraversal('replace', args),
1839
+ reverse: (...args) => callOnEmptyTraversal('reverse', args),
1840
+ rTrim: (...args) => callOnEmptyTraversal('rTrim', args),
1518
1841
  sack: (...args) => callOnEmptyTraversal('sack', args),
1519
1842
  sample: (...args) => callOnEmptyTraversal('sample', args),
1520
1843
  select: (...args) => callOnEmptyTraversal('select', args),
1521
1844
  sideEffect: (...args) => callOnEmptyTraversal('sideEffect', args),
1522
1845
  simplePath: (...args) => callOnEmptyTraversal('simplePath', args),
1523
1846
  skip: (...args) => callOnEmptyTraversal('skip', args),
1847
+ split: (...args) => callOnEmptyTraversal('split', args),
1524
1848
  store: (...args) => callOnEmptyTraversal('store', args),
1525
1849
  subgraph: (...args) => callOnEmptyTraversal('subgraph', args),
1850
+ substring: (...args) => callOnEmptyTraversal('substring', args),
1526
1851
  sum: (...args) => callOnEmptyTraversal('sum', args),
1527
1852
  tail: (...args) => callOnEmptyTraversal('tail', args),
1528
1853
  timeLimit: (...args) => callOnEmptyTraversal('timeLimit', args),
1529
1854
  times: (...args) => callOnEmptyTraversal('times', args),
1530
1855
  to: (...args) => callOnEmptyTraversal('to', args),
1531
1856
  toE: (...args) => callOnEmptyTraversal('toE', args),
1857
+ toLower: (...args) => callOnEmptyTraversal('toLower', args),
1858
+ toUpper: (...args) => callOnEmptyTraversal('toUpper', args),
1532
1859
  toV: (...args) => callOnEmptyTraversal('toV', args),
1533
1860
  tree: (...args) => callOnEmptyTraversal('tree', args),
1861
+ trim: (...args) => callOnEmptyTraversal('trim', args),
1534
1862
  unfold: (...args) => callOnEmptyTraversal('unfold', args),
1535
1863
  union: (...args) => callOnEmptyTraversal('union', args),
1536
1864
  until: (...args) => callOnEmptyTraversal('until', args),
@@ -1543,5 +1871,6 @@ const statics = {
1543
1871
  module.exports = {
1544
1872
  GraphTraversal,
1545
1873
  GraphTraversalSource,
1874
+ CardinalityValue,
1546
1875
  statics,
1547
1876
  };
@@ -511,6 +511,7 @@ module.exports = {
511
511
  cardinality: toEnum('Cardinality', 'list set single'),
512
512
  column: toEnum('Column', 'keys values'),
513
513
  direction: toDirectionEnum('Direction', 'BOTH IN OUT from_ to'),
514
+ dt: toEnum('DT', 'second minute hour day'),
514
515
  graphSONVersion: toEnum('GraphSONVersion', 'V1_0 V2_0 V3_0'),
515
516
  gryoVersion: toEnum('GryoVersion', 'V1_0 V3_0'),
516
517
  merge: toEnum('Merge', 'onCreate onMatch outV inV'),
@@ -74,6 +74,7 @@ const DataType = {
74
74
  METRICS: 0x2c,
75
75
  TRAVERSALMETRICS: 0x2d,
76
76
  MERGE: 0x2e,
77
+ DT: 0x2f,
77
78
 
78
79
  CHAR: 0x80,
79
80
  DURATION: 0x81,
@@ -41,6 +41,7 @@ module.exports = class EnumSerializer {
41
41
  { name: 'Cardinality', code: DT.CARDINALITY, enum: to_orig_enum(t.cardinality) },
42
42
  { name: 'Column', code: DT.COLUMN, enum: to_orig_enum(t.column) },
43
43
  { name: 'Direction', code: DT.DIRECTION, enum: to_orig_enum(t.direction) },
44
+ { name: 'DT', code: DT.DT, enum: to_orig_enum(t.dt) },
44
45
  { name: 'Merge', code: DT.MERGE, enum: to_orig_enum(t.merge) },
45
46
  { name: 'Operator', code: DT.OPERATOR, enum: to_orig_enum(t.operator) },
46
47
  { name: 'Order', code: DT.ORDER, enum: to_orig_enum(t.order) },
@@ -154,7 +154,7 @@ module.exports = class VertexPropertySerializer {
154
154
  // {properties} is a fully qualified typed value composed of {type_code}{type_info}{value_flag}{value} which contains properties. Note that as TinkerPop currently send "references" only, this value will always be null.
155
155
  let properties, properties_len;
156
156
  try {
157
- ({ v: properties, len: properties_len } = this.ioc.unspecifiedNullSerializer.deserialize(cursor));
157
+ ({ v: properties, len: properties_len } = this.ioc.anySerializer.deserialize(cursor));
158
158
  len += properties_len;
159
159
  } catch (err) {
160
160
  err.message = '{properties}: ' + err.message;
package/lib/utils.js CHANGED
@@ -26,7 +26,7 @@
26
26
  const crypto = require('crypto');
27
27
  const os = require('os');
28
28
 
29
- const gremlinVersion = '3.6.6'; // DO NOT MODIFY - Configured automatically by Maven Replacer Plugin
29
+ const gremlinVersion = '3.7.1'; // DO NOT MODIFY - Configured automatically by Maven Replacer Plugin
30
30
 
31
31
  exports.toLong = function toLong(value) {
32
32
  return new Long(value);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gremlin",
3
- "version": "3.6.6",
3
+ "version": "3.7.1",
4
4
  "description": "JavaScript Gremlin Language Variant",
5
5
  "author": "Apache TinkerPop team",
6
6
  "keywords": [
@@ -55,6 +55,6 @@
55
55
  "lint": "eslint --ext .js ."
56
56
  },
57
57
  "engines": {
58
- "node": ">=16"
58
+ "node": ">=18"
59
59
  }
60
60
  }