gremlin 3.5.1 → 3.6.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.
- package/.eslintrc.js +154 -0
- package/.prettierrc.js +29 -0
- package/Gruntfile.js +15 -16
- package/README.md +2 -2
- package/doc/AnonymousTraversalSource.html +5 -5
- package/doc/Authenticator.html +2 -2
- package/doc/Bytecode.html +7 -7
- package/doc/Client.html +138 -64
- package/doc/Connection.html +89 -5
- package/doc/DriverRemoteConnection.html +11 -11
- package/doc/EdgeLabelVerificationStrategy.html +3 -3
- package/doc/Graph.html +2 -2
- package/doc/GraphSON2Reader.html +4 -4
- package/doc/GraphSON2Writer.html +3 -3
- package/doc/GraphSON3Reader.html +3 -3
- package/doc/GraphSON3Writer.html +3 -3
- package/doc/GraphTraversal.html +1025 -190
- package/doc/GraphTraversalSource.html +520 -19
- package/doc/HaltedTraverserStrategy.html +3 -3
- package/doc/MatchAlgorithmStrategy.html +3 -3
- package/doc/P.html +13 -13
- package/doc/PartitionStrategy.html +3 -3
- package/doc/Path.html +2 -2
- package/doc/PlainTextSaslAuthenticator.html +2 -2
- package/doc/ProductiveByStrategy.html +288 -0
- package/doc/RemoteConnection.html +10 -10
- package/doc/RemoteStrategy.html +4 -4
- package/doc/RemoteTraversal.html +3 -3
- package/doc/ReservedKeysVerificationStrategy.html +3 -3
- package/doc/ResponseError.html +2 -2
- package/doc/ResultSet.html +7 -7
- package/doc/SaslAuthenticator.html +2 -2
- package/doc/SaslMechanismBase.html +2 -2
- package/doc/SaslMechanismPlain.html +6 -6
- package/doc/SeedStrategy.html +288 -0
- package/doc/SubgraphStrategy.html +3 -3
- package/doc/TextP.html +300 -10
- package/doc/Transaction.html +6 -6
- package/doc/Translator.html +198 -4
- package/doc/TraversalStrategies.html +5 -5
- package/doc/TraversalStrategy.html +3 -3
- package/doc/TypeSerializer.html +2 -2
- package/doc/driver_auth_authenticator.js.html +4 -4
- package/doc/driver_auth_mechanisms_sasl-mechanism-base.js.html +3 -3
- package/doc/driver_auth_mechanisms_sasl-mechanism-plain.js.html +26 -17
- package/doc/driver_auth_plain-text-sasl-authenticator.js.html +7 -7
- package/doc/driver_auth_sasl-authenticator.js.html +3 -3
- package/doc/driver_client.js.html +73 -23
- package/doc/driver_connection.js.html +108 -89
- package/doc/driver_driver-remote-connection.js.html +12 -11
- package/doc/driver_remote-connection.js.html +4 -5
- package/doc/driver_response-error.js.html +5 -4
- package/doc/driver_result-set.js.html +4 -4
- package/doc/global.html +200 -3
- package/doc/index.html +4 -4
- package/doc/process_anonymous-traversal.js.html +4 -4
- package/doc/process_bytecode.js.html +11 -9
- package/doc/process_graph-traversal.js.html +277 -143
- package/doc/process_transaction.js.html +16 -9
- package/doc/process_translator.js.html +53 -37
- package/doc/process_traversal-strategy.js.html +83 -53
- package/doc/process_traversal.js.html +111 -107
- package/doc/structure_graph.js.html +7 -7
- package/doc/structure_io_graph-serializer.js.html +65 -18
- package/doc/structure_io_type-serializers.js.html +86 -89
- package/index.js +5 -5
- package/lib/driver/auth/authenticator.js +2 -2
- package/lib/driver/auth/mechanisms/sasl-mechanism-base.js +1 -1
- package/lib/driver/auth/mechanisms/sasl-mechanism-plain.js +24 -15
- package/lib/driver/auth/plain-text-sasl-authenticator.js +5 -5
- package/lib/driver/auth/sasl-authenticator.js +1 -1
- package/lib/driver/client.js +71 -21
- package/lib/driver/connection.js +106 -87
- package/lib/driver/driver-remote-connection.js +10 -9
- package/lib/driver/remote-connection.js +2 -3
- package/lib/driver/response-error.js +2 -2
- package/lib/driver/result-set.js +1 -2
- package/lib/process/anonymous-traversal.js +1 -2
- package/lib/process/bytecode.js +9 -7
- package/lib/process/graph-traversal.js +274 -141
- package/lib/process/transaction.js +13 -7
- package/lib/process/translator.js +50 -35
- package/lib/process/traversal-strategy.js +80 -51
- package/lib/process/traversal.js +109 -105
- package/lib/structure/graph.js +5 -5
- package/lib/structure/io/graph-serializer.js +62 -16
- package/lib/structure/io/type-serializers.js +84 -87
- package/lib/utils.js +15 -10
- package/package.json +11 -4
|
@@ -48,9 +48,9 @@
|
|
|
48
48
|
/**
|
|
49
49
|
* @author Jorge Bay Gondra
|
|
50
50
|
*/
|
|
51
|
+
|
|
51
52
|
'use strict';
|
|
52
53
|
|
|
53
|
-
const utils = require('../utils');
|
|
54
54
|
const itemDone = Object.freeze({ value: null, done: true });
|
|
55
55
|
const asyncIteratorSymbol = Symbol.asyncIterator || Symbol('@@asyncIterator');
|
|
56
56
|
|
|
@@ -91,19 +91,21 @@ class Traversal {
|
|
|
91
91
|
}
|
|
92
92
|
return result;
|
|
93
93
|
});
|
|
94
|
-
}
|
|
94
|
+
}
|
|
95
95
|
|
|
96
96
|
/**
|
|
97
97
|
* Determines if there are any more items to iterate from the traversal.
|
|
98
98
|
* @returns {Promise.<boolean>}
|
|
99
99
|
*/
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
100
|
+
hasNext() {
|
|
101
|
+
return this._applyStrategies().then(
|
|
102
|
+
() =>
|
|
103
|
+
this.traversers &&
|
|
104
|
+
this.traversers.length > 0 &&
|
|
105
|
+
this._traversersIteratorIndex < this.traversers.length &&
|
|
106
|
+
this.traversers[this._traversersIteratorIndex].bulk > 0,
|
|
107
|
+
);
|
|
108
|
+
}
|
|
107
109
|
|
|
108
110
|
/**
|
|
109
111
|
* Iterates all Traverser instances in the traversal.
|
|
@@ -114,6 +116,7 @@ class Traversal {
|
|
|
114
116
|
return this._applyStrategies().then(() => {
|
|
115
117
|
let it;
|
|
116
118
|
while ((it = this._getNext()) && !it.done) {
|
|
119
|
+
//
|
|
117
120
|
}
|
|
118
121
|
});
|
|
119
122
|
}
|
|
@@ -133,7 +136,7 @@ class Traversal {
|
|
|
133
136
|
*/
|
|
134
137
|
_getNext() {
|
|
135
138
|
while (this.traversers && this._traversersIteratorIndex < this.traversers.length) {
|
|
136
|
-
|
|
139
|
+
const traverser = this.traversers[this._traversersIteratorIndex];
|
|
137
140
|
if (traverser.bulk > 0) {
|
|
138
141
|
traverser.bulk--;
|
|
139
142
|
return { value: traverser.object, done: false };
|
|
@@ -148,14 +151,14 @@ class Traversal {
|
|
|
148
151
|
// Apply strategies only once
|
|
149
152
|
return this._traversalStrategiesPromise;
|
|
150
153
|
}
|
|
151
|
-
return this._traversalStrategiesPromise = this.traversalStrategies.applyStrategies(this);
|
|
154
|
+
return (this._traversalStrategiesPromise = this.traversalStrategies.applyStrategies(this));
|
|
152
155
|
}
|
|
153
156
|
|
|
154
157
|
/**
|
|
155
158
|
* Returns step instructions during JSON serialization
|
|
156
159
|
* @returns {Array}
|
|
157
160
|
*/
|
|
158
|
-
toJSON(){
|
|
161
|
+
toJSON() {
|
|
159
162
|
return this.bytecode.stepInstructions;
|
|
160
163
|
}
|
|
161
164
|
|
|
@@ -165,106 +168,103 @@ class Traversal {
|
|
|
165
168
|
*/
|
|
166
169
|
toString() {
|
|
167
170
|
return this.bytecode.toString();
|
|
168
|
-
}
|
|
171
|
+
}
|
|
169
172
|
}
|
|
170
173
|
|
|
171
|
-
|
|
172
174
|
class IO {
|
|
175
|
+
static get graphml() {
|
|
176
|
+
return 'graphml';
|
|
177
|
+
}
|
|
173
178
|
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
static get graphson() {
|
|
179
|
-
return "graphson"
|
|
180
|
-
}
|
|
179
|
+
static get graphson() {
|
|
180
|
+
return 'graphson';
|
|
181
|
+
}
|
|
181
182
|
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
183
|
+
static get gryo() {
|
|
184
|
+
return 'gryo';
|
|
185
|
+
}
|
|
185
186
|
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
187
|
+
static get reader() {
|
|
188
|
+
return '~tinkerpop.io.reader';
|
|
189
|
+
}
|
|
189
190
|
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
191
|
+
static get registry() {
|
|
192
|
+
return '~tinkerpop.io.registry';
|
|
193
|
+
}
|
|
193
194
|
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
195
|
+
static get writer() {
|
|
196
|
+
return '~tinkerpop.io.writer';
|
|
197
|
+
}
|
|
197
198
|
}
|
|
198
199
|
|
|
200
|
+
// eslint-disable-next-line no-unused-vars
|
|
199
201
|
class ConnectedComponent {
|
|
202
|
+
static get component() {
|
|
203
|
+
return 'gremlin.connectedComponentVertexProgram.component';
|
|
204
|
+
}
|
|
200
205
|
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
static get edges() {
|
|
206
|
-
return "~tinkerpop.connectedComponent.edges"
|
|
207
|
-
}
|
|
206
|
+
static get edges() {
|
|
207
|
+
return '~tinkerpop.connectedComponent.edges';
|
|
208
|
+
}
|
|
208
209
|
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
210
|
+
static get propertyName() {
|
|
211
|
+
return '~tinkerpop.connectedComponent.propertyName';
|
|
212
|
+
}
|
|
212
213
|
}
|
|
213
214
|
|
|
215
|
+
// eslint-disable-next-line no-unused-vars
|
|
214
216
|
class ShortestPath {
|
|
217
|
+
static get distance() {
|
|
218
|
+
return '~tinkerpop.shortestPath.distance';
|
|
219
|
+
}
|
|
215
220
|
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
static get edges() {
|
|
221
|
-
return "~tinkerpop.shortestPath.edges"
|
|
222
|
-
}
|
|
221
|
+
static get edges() {
|
|
222
|
+
return '~tinkerpop.shortestPath.edges';
|
|
223
|
+
}
|
|
223
224
|
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
225
|
+
static get includeEdges() {
|
|
226
|
+
return '~tinkerpop.shortestPath.includeEdges';
|
|
227
|
+
}
|
|
227
228
|
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
229
|
+
static get maxDistance() {
|
|
230
|
+
return '~tinkerpop.shortestPath.maxDistance';
|
|
231
|
+
}
|
|
231
232
|
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
233
|
+
static get target() {
|
|
234
|
+
return '~tinkerpop.shortestPath.target';
|
|
235
|
+
}
|
|
235
236
|
}
|
|
236
237
|
|
|
238
|
+
// eslint-disable-next-line no-unused-vars
|
|
237
239
|
class PageRank {
|
|
240
|
+
static get edges() {
|
|
241
|
+
return '~tinkerpop.pageRank.edges';
|
|
242
|
+
}
|
|
238
243
|
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
static get propertyName() {
|
|
244
|
-
return "~tinkerpop.pageRank.propertyName"
|
|
245
|
-
}
|
|
244
|
+
static get propertyName() {
|
|
245
|
+
return '~tinkerpop.pageRank.propertyName';
|
|
246
|
+
}
|
|
246
247
|
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
248
|
+
static get times() {
|
|
249
|
+
return '~tinkerpop.pageRank.times';
|
|
250
|
+
}
|
|
250
251
|
}
|
|
251
252
|
|
|
253
|
+
// eslint-disable-next-line no-unused-vars
|
|
252
254
|
class PeerPressure {
|
|
255
|
+
static get edges() {
|
|
256
|
+
return '~tinkerpop.peerPressure.edges';
|
|
257
|
+
}
|
|
253
258
|
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
static get propertyName() {
|
|
259
|
-
return "~tinkerpop.peerPressure.propertyName"
|
|
260
|
-
}
|
|
259
|
+
static get propertyName() {
|
|
260
|
+
return '~tinkerpop.peerPressure.propertyName';
|
|
261
|
+
}
|
|
261
262
|
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
263
|
+
static get times() {
|
|
264
|
+
return '~tinkerpop.peerPressure.times';
|
|
265
|
+
}
|
|
265
266
|
}
|
|
266
267
|
|
|
267
|
-
|
|
268
268
|
class P {
|
|
269
269
|
/**
|
|
270
270
|
* Represents an operation.
|
|
@@ -281,16 +281,16 @@ class P {
|
|
|
281
281
|
* @returns {string}
|
|
282
282
|
*/
|
|
283
283
|
toString() {
|
|
284
|
-
function formatValue(value){
|
|
284
|
+
function formatValue(value) {
|
|
285
285
|
if (Array.isArray(value)) {
|
|
286
|
-
|
|
286
|
+
const acc = [];
|
|
287
287
|
for (const item of value) {
|
|
288
288
|
acc.push(formatValue(item));
|
|
289
289
|
}
|
|
290
290
|
return acc;
|
|
291
291
|
}
|
|
292
|
-
if (value && typeof value ===
|
|
293
|
-
return
|
|
292
|
+
if (value && typeof value === 'string') {
|
|
293
|
+
return `'${value}'`;
|
|
294
294
|
}
|
|
295
295
|
return value;
|
|
296
296
|
}
|
|
@@ -311,21 +311,18 @@ class P {
|
|
|
311
311
|
|
|
312
312
|
static within(...args) {
|
|
313
313
|
if (args.length === 1 && Array.isArray(args[0])) {
|
|
314
|
-
return new P(
|
|
315
|
-
} else {
|
|
316
|
-
return new P("within", args, null);
|
|
314
|
+
return new P('within', args[0], null);
|
|
317
315
|
}
|
|
316
|
+
return new P('within', args, null);
|
|
318
317
|
}
|
|
319
318
|
|
|
320
319
|
static without(...args) {
|
|
321
320
|
if (args.length === 1 && Array.isArray(args[0])) {
|
|
322
|
-
return new P(
|
|
323
|
-
} else {
|
|
324
|
-
return new P("without", args, null);
|
|
321
|
+
return new P('without', args[0], null);
|
|
325
322
|
}
|
|
323
|
+
return new P('without', args, null);
|
|
326
324
|
}
|
|
327
325
|
|
|
328
|
-
|
|
329
326
|
/** @param {...Object} args */
|
|
330
327
|
static between(...args) {
|
|
331
328
|
return createP('between', args);
|
|
@@ -380,12 +377,11 @@ class P {
|
|
|
380
377
|
static test(...args) {
|
|
381
378
|
return createP('test', args);
|
|
382
379
|
}
|
|
383
|
-
|
|
384
380
|
}
|
|
385
381
|
|
|
386
382
|
function createP(operator, args) {
|
|
387
383
|
args.unshift(null, operator);
|
|
388
|
-
return new (Function.prototype.bind.apply(P, args));
|
|
384
|
+
return new (Function.prototype.bind.apply(P, args))();
|
|
389
385
|
}
|
|
390
386
|
|
|
391
387
|
class TextP {
|
|
@@ -404,9 +400,9 @@ class TextP {
|
|
|
404
400
|
* @returns {string}
|
|
405
401
|
*/
|
|
406
402
|
toString() {
|
|
407
|
-
function formatValue(value){
|
|
408
|
-
if (value && typeof value ===
|
|
409
|
-
return
|
|
403
|
+
function formatValue(value) {
|
|
404
|
+
if (value && typeof value === 'string') {
|
|
405
|
+
return `'${value}'`;
|
|
410
406
|
}
|
|
411
407
|
return value;
|
|
412
408
|
}
|
|
@@ -455,11 +451,20 @@ class TextP {
|
|
|
455
451
|
return createTextP('startingWith', args);
|
|
456
452
|
}
|
|
457
453
|
|
|
454
|
+
/** @param {...Object} args */
|
|
455
|
+
static regex(...args) {
|
|
456
|
+
return createTextP('regex', args);
|
|
457
|
+
}
|
|
458
|
+
|
|
459
|
+
/** @param {...Object} args */
|
|
460
|
+
static notRegex(...args) {
|
|
461
|
+
return createTextP('notRegex', args);
|
|
462
|
+
}
|
|
458
463
|
}
|
|
459
464
|
|
|
460
465
|
function createTextP(operator, args) {
|
|
461
466
|
args.unshift(null, operator);
|
|
462
|
-
return new (Function.prototype.bind.apply(TextP, args));
|
|
467
|
+
return new (Function.prototype.bind.apply(TextP, args))();
|
|
463
468
|
}
|
|
464
469
|
|
|
465
470
|
class Traverser {
|
|
@@ -469,26 +474,24 @@ class Traverser {
|
|
|
469
474
|
}
|
|
470
475
|
}
|
|
471
476
|
|
|
472
|
-
class TraversalSideEffects {
|
|
473
|
-
|
|
474
|
-
}
|
|
477
|
+
class TraversalSideEffects {}
|
|
475
478
|
|
|
476
479
|
const withOptions = {
|
|
477
|
-
tokens:
|
|
480
|
+
tokens: '~tinkerpop.valueMap.tokens',
|
|
478
481
|
none: 0,
|
|
479
482
|
ids: 1,
|
|
480
483
|
labels: 2,
|
|
481
484
|
keys: 4,
|
|
482
485
|
values: 8,
|
|
483
486
|
all: 15,
|
|
484
|
-
indexer:
|
|
487
|
+
indexer: '~tinkerpop.index.indexer',
|
|
485
488
|
list: 0,
|
|
486
|
-
map: 1
|
|
489
|
+
map: 1,
|
|
487
490
|
};
|
|
488
491
|
|
|
489
492
|
function toEnum(typeName, keys) {
|
|
490
493
|
const result = {};
|
|
491
|
-
keys.split(' ').forEach(k => {
|
|
494
|
+
keys.split(' ').forEach((k) => {
|
|
492
495
|
let jsKey = k;
|
|
493
496
|
if (jsKey === jsKey.toUpperCase()) {
|
|
494
497
|
jsKey = jsKey.toLowerCase();
|
|
@@ -524,12 +527,13 @@ module.exports = {
|
|
|
524
527
|
direction: toEnum('Direction', 'BOTH IN OUT'),
|
|
525
528
|
graphSONVersion: toEnum('GraphSONVersion', 'V1_0 V2_0 V3_0'),
|
|
526
529
|
gryoVersion: toEnum('GryoVersion', 'V1_0 V3_0'),
|
|
530
|
+
merge: toEnum('Merge', 'onCreate onMatch'),
|
|
527
531
|
operator: toEnum('Operator', 'addAll and assign div max min minus mult or sum sumLong'),
|
|
528
532
|
order: toEnum('Order', 'asc desc shuffle'),
|
|
529
533
|
pick: toEnum('Pick', 'any none'),
|
|
530
534
|
pop: toEnum('Pop', 'all first last mixed'),
|
|
531
535
|
scope: toEnum('Scope', 'global local'),
|
|
532
|
-
t: toEnum('T', 'id key label value')
|
|
536
|
+
t: toEnum('T', 'id key label value'),
|
|
533
537
|
};
|
|
534
538
|
</code></pre>
|
|
535
539
|
</article>
|
|
@@ -541,13 +545,13 @@ module.exports = {
|
|
|
541
545
|
</div>
|
|
542
546
|
|
|
543
547
|
<nav>
|
|
544
|
-
<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="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="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="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="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#statics">statics</a></li></ul>
|
|
548
|
+
<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="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="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#statics">statics</a></li></ul>
|
|
545
549
|
</nav>
|
|
546
550
|
|
|
547
551
|
<br class="clear">
|
|
548
552
|
|
|
549
553
|
<footer>
|
|
550
|
-
Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.
|
|
554
|
+
Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Mon Apr 11 2022 07:53:52 GMT-0400 (Eastern Daylight Time)
|
|
551
555
|
</footer>
|
|
552
556
|
|
|
553
557
|
<script> prettyPrint(); </script>
|
|
@@ -85,7 +85,7 @@ class Element {
|
|
|
85
85
|
* @returns {boolean}
|
|
86
86
|
*/
|
|
87
87
|
equals(other) {
|
|
88
|
-
return
|
|
88
|
+
return other instanceof Element && this.id === other.id;
|
|
89
89
|
}
|
|
90
90
|
}
|
|
91
91
|
|
|
@@ -147,7 +147,7 @@ class Property {
|
|
|
147
147
|
}
|
|
148
148
|
|
|
149
149
|
equals(other) {
|
|
150
|
-
return
|
|
150
|
+
return other instanceof Property && this.key === other.key && this.value === other.value;
|
|
151
151
|
}
|
|
152
152
|
}
|
|
153
153
|
|
|
@@ -164,7 +164,7 @@ class Path {
|
|
|
164
164
|
}
|
|
165
165
|
|
|
166
166
|
toString() {
|
|
167
|
-
return `path[${(this.objects || []).join(
|
|
167
|
+
return `path[${(this.objects || []).join(', ')}]`;
|
|
168
168
|
}
|
|
169
169
|
|
|
170
170
|
equals(other) {
|
|
@@ -190,7 +190,7 @@ function areEqual(obj1, obj2) {
|
|
|
190
190
|
return false;
|
|
191
191
|
}
|
|
192
192
|
for (let i = 0; i < obj1.length; i++) {
|
|
193
|
-
if (!areEqual(obj1[i], obj2[i])){
|
|
193
|
+
if (!areEqual(obj1[i], obj2[i])) {
|
|
194
194
|
return false;
|
|
195
195
|
}
|
|
196
196
|
}
|
|
@@ -214,7 +214,7 @@ module.exports = {
|
|
|
214
214
|
Path,
|
|
215
215
|
Property,
|
|
216
216
|
Vertex,
|
|
217
|
-
VertexProperty
|
|
217
|
+
VertexProperty,
|
|
218
218
|
};
|
|
219
219
|
</code></pre>
|
|
220
220
|
</article>
|
|
@@ -226,13 +226,13 @@ module.exports = {
|
|
|
226
226
|
</div>
|
|
227
227
|
|
|
228
228
|
<nav>
|
|
229
|
-
<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="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="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="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="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#statics">statics</a></li></ul>
|
|
229
|
+
<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="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="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#statics">statics</a></li></ul>
|
|
230
230
|
</nav>
|
|
231
231
|
|
|
232
232
|
<br class="clear">
|
|
233
233
|
|
|
234
234
|
<footer>
|
|
235
|
-
Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.
|
|
235
|
+
Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Mon Apr 11 2022 07:53:52 GMT-0400 (Eastern Daylight Time)
|
|
236
236
|
</footer>
|
|
237
237
|
|
|
238
238
|
<script> prettyPrint(); </script>
|