gremlin 3.8.0 → 3.8.2

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 (85) hide show
  1. package/.prettierrc.js +1 -1
  2. package/NOTICE +1 -1
  3. package/doc/AnonymousTraversalSource.html +69 -69
  4. package/doc/Authenticator.html +2 -2
  5. package/doc/Bytecode.html +87 -87
  6. package/doc/CardinalityValue.html +2 -2
  7. package/doc/Client.html +2 -2
  8. package/doc/Connection.html +2 -2
  9. package/doc/DriverRemoteConnection.html +2 -2
  10. package/doc/EdgeLabelVerificationStrategy.html +3 -3
  11. package/doc/Graph.html +2 -2
  12. package/doc/GraphSON2Reader.html +2 -2
  13. package/doc/GraphSON2Writer.html +2 -2
  14. package/doc/GraphSON3Reader.html +2 -2
  15. package/doc/GraphSON3Writer.html +2 -2
  16. package/doc/GraphTraversal.html +337 -337
  17. package/doc/GraphTraversalSource.html +278 -278
  18. package/doc/HaltedTraverserStrategy.html +2 -2
  19. package/doc/MatchAlgorithmStrategy.html +2 -2
  20. package/doc/P.html +110 -110
  21. package/doc/PartitionStrategy.html +2 -2
  22. package/doc/Path.html +3 -3
  23. package/doc/PlainTextSaslAuthenticator.html +2 -2
  24. package/doc/ProductiveByStrategy.html +6 -3
  25. package/doc/RemoteConnection.html +2 -2
  26. package/doc/RemoteStrategy.html +2 -2
  27. package/doc/RemoteTraversal.html +2 -2
  28. package/doc/ReservedKeysVerificationStrategy.html +3 -3
  29. package/doc/ResponseError.html +2 -2
  30. package/doc/ResultSet.html +2 -2
  31. package/doc/SaslAuthenticator.html +2 -2
  32. package/doc/SaslMechanismBase.html +2 -2
  33. package/doc/SaslMechanismPlain.html +2 -2
  34. package/doc/SeedStrategy.html +2 -2
  35. package/doc/SubgraphStrategy.html +2 -2
  36. package/doc/TextP.html +101 -101
  37. package/doc/Transaction.html +2 -2
  38. package/doc/Translator.html +2 -2
  39. package/doc/TraversalStrategies.html +2 -2
  40. package/doc/TraversalStrategy.html +2 -2
  41. package/doc/TypeSerializer.html +2 -2
  42. package/doc/driver_auth_authenticator.js.html +2 -2
  43. package/doc/driver_auth_mechanisms_sasl-mechanism-base.js.html +2 -2
  44. package/doc/driver_auth_mechanisms_sasl-mechanism-plain.js.html +2 -2
  45. package/doc/driver_auth_plain-text-sasl-authenticator.js.html +2 -2
  46. package/doc/driver_auth_sasl-authenticator.js.html +2 -2
  47. package/doc/driver_client.js.html +2 -2
  48. package/doc/driver_connection.js.html +2 -2
  49. package/doc/driver_driver-remote-connection.js.html +2 -2
  50. package/doc/driver_remote-connection.js.html +2 -2
  51. package/doc/driver_response-error.js.html +2 -2
  52. package/doc/driver_result-set.js.html +2 -2
  53. package/doc/global.html +3 -3
  54. package/doc/index.html +2 -2
  55. package/doc/module.exports.html +2 -2
  56. package/doc/process_anonymous-traversal.js.html +2 -2
  57. package/doc/process_bytecode.js.html +2 -2
  58. package/doc/process_graph-traversal.js.html +2 -2
  59. package/doc/process_transaction.js.html +2 -2
  60. package/doc/process_translator.js.html +2 -2
  61. package/doc/process_traversal-strategy.js.html +6 -2
  62. package/doc/process_traversal.js.html +30 -7
  63. package/doc/structure_graph.js.html +15 -2
  64. package/doc/structure_io_binary_internals_DataType.js.html +2 -2
  65. package/doc/structure_io_binary_internals_GraphBinaryReader.js.html +2 -2
  66. package/doc/structure_io_binary_internals_GraphBinaryWriter.js.html +2 -2
  67. package/doc/structure_io_graph-serializer.js.html +2 -2
  68. package/doc/structure_io_type-serializers.js.html +11 -3
  69. package/doc/utils.js.html +3 -3
  70. package/docker-compose.yml +13 -3
  71. package/eslint.config.mjs +143 -0
  72. package/index.js +1 -1
  73. package/lib/process/traversal-strategy.js +4 -0
  74. package/lib/process/traversal.js +28 -5
  75. package/lib/structure/graph.js +13 -0
  76. package/lib/structure/io/binary/internals/OffsetDateTimeSerializer.js +9 -0
  77. package/lib/structure/io/type-serializers.js +9 -1
  78. package/lib/utils.js +1 -1
  79. package/package.json +19 -17
  80. package/.eslintrc.js +0 -154
  81. package/Gruntfile.js +0 -35
  82. package/doc/DataType.js.html +0 -150
  83. package/doc/GraphBinaryReader.js.html +0 -132
  84. package/doc/GraphBinaryWriter.js.html +0 -135
  85. package/licenses/chai +0 -21
@@ -0,0 +1,143 @@
1
+ /*
2
+ * Licensed to the Apache Software Foundation (ASF) under one
3
+ * or more contributor license agreements. See the NOTICE file
4
+ * distributed with this work for additional information
5
+ * regarding copyright ownership. The ASF licenses this file
6
+ * to you under the Apache License, Version 2.0 (the
7
+ * "License"); you may not use this file except in compliance
8
+ * with the License. You may obtain a copy of the License at
9
+ *
10
+ * http://www.apache.org/licenses/LICENSE-2.0
11
+ *
12
+ * Unless required by applicable law or agreed to in writing,
13
+ * software distributed under the License is distributed on an
14
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15
+ * KIND, either express or implied. See the License for the
16
+ * specific language governing permissions and limitations
17
+ * under the License.
18
+ */
19
+
20
+ import js from "@eslint/js";
21
+ import prettier from "eslint-config-prettier";
22
+ import prettierPlugin from "eslint-plugin-prettier";
23
+ import globals from "globals";
24
+
25
+ export default [
26
+ js.configs.recommended,
27
+ prettier,
28
+ {
29
+ plugins: {
30
+ prettier: prettierPlugin,
31
+ },
32
+ languageOptions: {
33
+ ecmaVersion: 2022,
34
+ sourceType: "commonjs",
35
+ globals: {
36
+ ...globals.node,
37
+ ...globals.commonjs,
38
+ ...globals.mocha,
39
+ BigInt: "readonly",
40
+ },
41
+ },
42
+ rules: {
43
+ "prettier/prettier": ["error", { endOfLine: "auto" }],
44
+ "linebreak-style": 0,
45
+ quotes: ["error", "single"],
46
+ semi: ["error", "always"],
47
+ "no-constant-condition": ["error", { checkLoops: false }],
48
+ strict: ["error", "global"],
49
+ "array-callback-return": "error",
50
+ curly: "error",
51
+ "no-unused-vars": ["error", { args: "none" }],
52
+ "global-require": "error",
53
+ eqeqeq: ["error", "allow-null"],
54
+ "guard-for-in": "error",
55
+ "no-alert": "error",
56
+ "no-caller": "error",
57
+ "no-case-declarations": "error",
58
+ "no-else-return": "error",
59
+ "no-empty-pattern": "error",
60
+ "no-eval": "error",
61
+ "no-extend-native": "error",
62
+ "no-extra-bind": "error",
63
+ "no-extra-label": "error",
64
+ "no-floating-decimal": "error",
65
+ "no-global-assign": ["error", { exceptions: [] }],
66
+ "no-implicit-coercion": [
67
+ "off",
68
+ {
69
+ boolean: false,
70
+ number: true,
71
+ string: true,
72
+ allow: [],
73
+ },
74
+ ],
75
+ "no-implied-eval": "error",
76
+ "no-labels": ["error", { allowLoop: false, allowSwitch: false }],
77
+ "no-lone-blocks": "error",
78
+ "no-loop-func": "error",
79
+ "no-multi-spaces": "error",
80
+ "no-new": "error",
81
+ "no-new-func": "error",
82
+ "no-new-wrappers": "error",
83
+ "no-octal-escape": "error",
84
+ "no-proto": "error",
85
+ "no-prototype-builtins": 0,
86
+ "no-redeclare": "error",
87
+ "no-restricted-properties": [
88
+ "error",
89
+ {
90
+ object: "arguments",
91
+ property: "callee",
92
+ message: "arguments.callee is deprecated",
93
+ },
94
+ {
95
+ property: "__defineGetter__",
96
+ message: "Please use Object.defineProperty instead.",
97
+ },
98
+ {
99
+ property: "__defineSetter__",
100
+ message: "Please use Object.defineProperty instead.",
101
+ },
102
+ ],
103
+ "no-self-assign": "error",
104
+ "no-self-compare": "error",
105
+ "no-sequences": "error",
106
+ "no-throw-literal": "error",
107
+ "no-unmodified-loop-condition": "off",
108
+ "no-unused-expressions": [
109
+ "error",
110
+ {
111
+ allowShortCircuit: false,
112
+ allowTernary: false,
113
+ },
114
+ ],
115
+ "no-useless-call": "off",
116
+ "no-useless-concat": "error",
117
+ "no-useless-escape": "error",
118
+ "no-useless-return": "error",
119
+ "no-void": "error",
120
+ "no-with": "error",
121
+ "no-buffer-constructor": "error",
122
+ radix: "error",
123
+ "no-var": "error",
124
+ "prefer-const": "error",
125
+ "arrow-body-style": ["error", "as-needed"],
126
+ "arrow-spacing": "error",
127
+ "no-confusing-arrow": ["error", { allowParens: true }],
128
+ yoda: "error",
129
+ "constructor-super": "error",
130
+ "require-await": "error",
131
+ "require-atomic-updates": "off",
132
+ },
133
+ },
134
+ {
135
+ ignores: ["test/**/*.js", "doc/**/*.js", "node_modules/**/*", ".prettierrc.js", "eslint.config.mjs"],
136
+ },
137
+ {
138
+ files: ["eslint.config.mjs"],
139
+ languageOptions: {
140
+ sourceType: "module",
141
+ },
142
+ },
143
+ ];
package/index.js CHANGED
@@ -7,7 +7,7 @@
7
7
  * "License"); you may not use this file except in compliance
8
8
  * with the License. You may obtain a copy of the License at
9
9
  *
10
- * http://www.apache.org/licenses/LICENSE-2.0
10
+ * http://www.apache.org/licenses/LICENSE-2.0
11
11
  *
12
12
  * Unless required by applicable law or agreed to in writing,
13
13
  * software distributed under the License is distributed on an
@@ -276,6 +276,10 @@ class PathRetractionStrategy extends TraversalStrategy {
276
276
  }
277
277
  }
278
278
 
279
+ /**
280
+ * @deprecated As of release 3.7.7, not replaced. This strategy was added as a temporary way to mimic pre-3.5.0
281
+ * null processing behavior.
282
+ */
279
283
  class ProductiveByStrategy extends TraversalStrategy {
280
284
  /**
281
285
  * @param {Object} [options]
@@ -94,12 +94,35 @@ class Traversal {
94
94
  }
95
95
 
96
96
  /**
97
- * Async iterator method implementation.
98
- * Returns a promise containing an iterator item.
99
- * @returns {Promise.<{value, done}>}
97
+ * Returns the next result from the traversal.
98
+ *
99
+ * When called without an argument, returns a Promise that resolves to an iterator
100
+ * item ({value, done}), following the async iterator protocol.
101
+ *
102
+ * When called with an amount, returns a Promise that resolves to an Array containing
103
+ * up to {@code amount} result values. The Array form is always used when an amount is
104
+ * supplied, including {@code next(1)}, which resolves to an Array of one value rather
105
+ * than a bare value, matching the behavior of next(n) in the other Gremlin language
106
+ * variants. If fewer results remain, the Array contains only those that remain, and an
107
+ * amount of zero or less yields an empty Array.
108
+ * @param {Number} [amount] The number of results to retrieve.
109
+ * @returns {Promise.<{value, done}>|Promise.<Array>}
100
110
  */
101
- next() {
102
- return this._applyStrategies().then(() => this._getNext());
111
+ next(amount) {
112
+ if (amount === undefined || amount === null) {
113
+ return this._applyStrategies().then(() => this._getNext());
114
+ }
115
+ return this._applyStrategies().then(() => {
116
+ const result = [];
117
+ for (let i = 0; i < amount; i++) {
118
+ const it = this._getNext();
119
+ if (it.done) {
120
+ break;
121
+ }
122
+ result.push(it.value);
123
+ }
124
+ return result;
125
+ });
103
126
  }
104
127
 
105
128
  /**
@@ -61,6 +61,19 @@ class Element {
61
61
  equals(other) {
62
62
  return other instanceof Element && this.id === other.id;
63
63
  }
64
+
65
+ /**
66
+ * Groups this element's properties by key.
67
+ * @returns {Object<string, Object[]>} a map of property key to the array of
68
+ * property objects for that key (empty object when there are no properties).
69
+ */
70
+ propertyMap() {
71
+ const map = Object.create(null);
72
+ for (const p of this.properties) {
73
+ (map[p.key] = map[p.key] || []).push(p);
74
+ }
75
+ return map;
76
+ }
64
77
  }
65
78
 
66
79
  class Vertex extends Element {
@@ -143,6 +143,15 @@ module.exports = class OffsetDateTimeSerializer {
143
143
  // use UTC time calculated with offset above
144
144
  const v = new Date(Date.UTC(year, month, date, h, m, s, ms));
145
145
 
146
+ // The GraphBinary DateTime/OffsetDateTime wire format can carry values (e.g. extreme years near
147
+ // +/-999999999) that fall outside the range representable by a JavaScript Date. In those cases
148
+ // Date.UTC(...) returns NaN and new Date(NaN) yields an invalid Date without throwing. Reject such
149
+ // values here so unsupported boundary date-times fail deserialization instead of silently producing
150
+ // an unusable Date instance.
151
+ if (Number.isNaN(v.getTime())) {
152
+ throw new Error('{value} is outside the range supported by JavaScript Date');
153
+ }
154
+
146
155
  return { v, len };
147
156
  } catch (err) {
148
157
  throw this.ioc.utils.des_error({ serializer: this, args: arguments, cursor, err });
@@ -103,7 +103,15 @@ class OffsetDateTimeSerializer extends TypeSerializer {
103
103
  }
104
104
 
105
105
  deserialize(obj) {
106
- return new Date(obj[valueKey]);
106
+ // An OffsetDateTime value can carry a date-time (e.g. extreme years) that falls outside the range
107
+ // representable by a JavaScript Date. In those cases new Date(...) yields an invalid Date without
108
+ // throwing. Reject such values so unsupported boundary date-times fail deserialization instead of
109
+ // silently producing an unusable Date instance. Mirrors the GraphBinary OffsetDateTime reader.
110
+ const value = new Date(obj[valueKey]);
111
+ if (Number.isNaN(value.getTime())) {
112
+ throw new Error('OffsetDateTime value is outside the range supported by JavaScript Date');
113
+ }
114
+ return value;
107
115
  }
108
116
 
109
117
  canBeUsedFor(value) {
package/lib/utils.js CHANGED
@@ -25,7 +25,7 @@
25
25
 
26
26
  const uuid = require('uuid');
27
27
 
28
- const gremlinVersion = '3.8.0'; // DO NOT MODIFY - Configured automatically by Maven Replacer Plugin
28
+ const gremlinVersion = '3.8.2'; // DO NOT MODIFY - Configured automatically by Maven Replacer Plugin
29
29
 
30
30
  exports.toLong = function toLong(value) {
31
31
  return new Long(value);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gremlin",
3
- "version": "3.8.0",
3
+ "version": "3.8.2",
4
4
  "description": "JavaScript Gremlin Language Variant",
5
5
  "author": {
6
6
  "name": "Apache TinkerPop team"
@@ -19,25 +19,26 @@
19
19
  "license": "Apache-2.0",
20
20
  "dependencies": {
21
21
  "buffer": "^6.0.3",
22
- "eventemitter3": "^5.0.1",
23
- "readable-stream": "^4.5.2",
24
- "uuid": "^9.0.1",
25
- "ws": "^8.16.0"
22
+ "eventemitter3": "^5.0.4",
23
+ "readable-stream": "^4.7.0",
24
+ "uuid": "^11.1.1",
25
+ "ws": "^8.21.1"
26
26
  },
27
27
  "devDependencies": {
28
28
  "chai": "~4.5.0",
29
- "chai-string": "~1.5.0",
29
+ "chai-string": "~1.6.0",
30
30
  "colors": "1.4.0",
31
- "cross-env": "^7.0.3",
32
- "cucumber": "~6.0.7",
33
- "eslint": "^8.42.0",
34
- "eslint-config-prettier": "^10.0.1",
35
- "eslint-plugin-prettier": "^5.0.0",
36
- "grunt": "^1.5.3",
37
- "grunt-cli": "~1.5.0",
38
- "grunt-jsdoc": "~2.4.1",
39
- "mocha": "^10.2.0",
40
- "prettier": "^3.0.0"
31
+ "cross-env": "^10.1.0",
32
+ "@cucumber/cucumber": "~12.7.0",
33
+ "@eslint/js": "^9.16.0",
34
+ "eslint": "^9.36.0",
35
+ "eslint-config-prettier": "^10.1.8",
36
+ "eslint-plugin-prettier": "^5.5.6",
37
+ "globals": "^15.14.0",
38
+ "jsdoc": "^4.0.5",
39
+ "js-yaml": "^3.14.2",
40
+ "mocha": "^11.7.6",
41
+ "prettier": "^3.9.6"
41
42
  },
42
43
  "repository": {
43
44
  "type": "git",
@@ -60,7 +61,8 @@
60
61
  "features-docker": "npm run features-graphson30-docker && npm run features-graphbinary-docker",
61
62
  "features-graphson30-docker": "cross-env CLIENT_MIMETYPE='application/vnd.gremlin-v3.0+json' cucumber-js --tags \"not @DataUUID and not @DataLong\" --require test/cucumber ../gremlin-test/",
62
63
  "features-graphbinary-docker": "cross-env CLIENT_MIMETYPE='application/vnd.graphbinary-v1.0' cucumber-js --tags \"not @DataBigDecimal and not @DataBigInt and not @DataUUID and not @DataLong\" --require test/cucumber ../gremlin-test/",
63
- "lint": "eslint --ext .js ."
64
+ "lint": "eslint .",
65
+ "doc": "jsdoc -r -d doc -R README.md lib/"
64
66
  },
65
67
  "engines": {
66
68
  "node": ">=20"
package/.eslintrc.js DELETED
@@ -1,154 +0,0 @@
1
- /*
2
- * Licensed to the Apache Software Foundation (ASF) under one
3
- * or more contributor license agreements. See the NOTICE file
4
- * distributed with this work for additional information
5
- * regarding copyright ownership. The ASF licenses this file
6
- * to you under the Apache License, Version 2.0 (the
7
- * "License"); you may not use this file except in compliance
8
- * with the License. You may obtain a copy of the License at
9
- *
10
- * http://www.apache.org/licenses/LICENSE-2.0
11
- *
12
- * Unless required by applicable law or agreed to in writing,
13
- * software distributed under the License is distributed on an
14
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15
- * KIND, either express or implied. See the License for the
16
- * specific language governing permissions and limitations
17
- * under the License.
18
- */
19
-
20
- 'use strict';
21
-
22
- module.exports = {
23
- env: {
24
- commonjs: true,
25
- es2022: true,
26
- node: true,
27
- },
28
- parserOptions: {
29
- ecmaVersion: 2022,
30
- },
31
- ignorePatterns: ['test/**/*.js', 'doc/**/*.js'],
32
- extends: ['eslint:recommended', 'prettier'],
33
- plugins: ['prettier'],
34
- rules: {
35
- 'prettier/prettier': ['error', { endOfLine: 'auto' }],
36
- 'linebreak-style': 0,
37
- quotes: ['error', 'single'],
38
- semi: ['error', 'always'],
39
- 'no-constant-condition': ['error', { checkLoops: false }],
40
- strict: ['error', 'global'],
41
- 'array-callback-return': 'error',
42
- curly: 'error',
43
- 'no-unused-vars': ['error', { args: 'none' }],
44
- 'global-require': 'error',
45
- eqeqeq: ['error', 'allow-null'],
46
-
47
- // make sure for-in loops have an if statement
48
- 'guard-for-in': 'error',
49
- 'no-alert': 'error',
50
- 'no-caller': 'error',
51
- 'no-case-declarations': 'error',
52
- 'no-else-return': 'error',
53
- 'no-empty-pattern': 'error',
54
- 'no-eval': 'error',
55
- 'no-extend-native': 'error',
56
- 'no-extra-bind': 'error',
57
- 'no-extra-label': 'error',
58
- 'no-floating-decimal': 'error',
59
- 'no-global-assign': ['error', { exceptions: [] }],
60
- 'no-implicit-coercion': [
61
- 'off',
62
- {
63
- boolean: false,
64
- number: true,
65
- string: true,
66
- allow: [],
67
- },
68
- ],
69
- 'no-implied-eval': 'error',
70
- 'no-labels': ['error', { allowLoop: false, allowSwitch: false }],
71
- 'no-lone-blocks': 'error',
72
- 'no-loop-func': 'error',
73
- //
74
- // disallow use of multiple spaces
75
- 'no-multi-spaces': 'error',
76
- 'no-new': 'error',
77
- 'no-new-func': 'error',
78
- 'no-new-wrappers': 'error',
79
- 'no-octal-escape': 'error',
80
- 'no-proto': 'error',
81
- 'no-prototype-builtins': 0,
82
- 'no-redeclare': 'error',
83
- 'no-restricted-properties': [
84
- 'error',
85
- {
86
- object: 'arguments',
87
- property: 'callee',
88
- message: 'arguments.callee is deprecated',
89
- },
90
- {
91
- property: '__defineGetter__',
92
- message: 'Please use Object.defineProperty instead.',
93
- },
94
- {
95
- property: '__defineSetter__',
96
- message: 'Please use Object.defineProperty instead.',
97
- },
98
- ],
99
- 'no-self-assign': 'error',
100
- 'no-self-compare': 'error',
101
- 'no-sequences': 'error',
102
- 'no-throw-literal': 'error',
103
- 'no-unmodified-loop-condition': 'off',
104
- 'no-unused-expressions': [
105
- 'error',
106
- {
107
- allowShortCircuit: false,
108
- allowTernary: false,
109
- },
110
- ],
111
- 'no-useless-call': 'off',
112
- 'no-useless-concat': 'error',
113
- 'no-useless-escape': 'error',
114
- 'no-useless-return': 'error',
115
- 'no-void': 'error',
116
- 'no-with': 'error',
117
- 'no-buffer-constructor': 'error',
118
- radix: 'error',
119
- 'no-var': 'error',
120
- 'prefer-const': 'error',
121
- 'arrow-body-style': ['error', 'as-needed'],
122
- 'arrow-spacing': 'error',
123
- 'no-confusing-arrow': ['error', { allowParens: true }],
124
- yoda: 'error',
125
- 'constructor-super': 'error',
126
- 'require-await': 'error',
127
- 'require-atomic-updates': 'off',
128
- },
129
- globals: {
130
- Buffer: 'off',
131
- Promise: true,
132
- Symbol: false,
133
- Uint16Array: false,
134
- Int32Array: false,
135
- Int8Array: false,
136
- BigInt: false,
137
- process: false,
138
- setInterval: false,
139
- setTimeout: false,
140
- setImmediate: false,
141
- clearInterval: false,
142
- clearTimeout: false,
143
- describe: false,
144
- xdescribe: false,
145
- it: false,
146
- xit: false,
147
- context: false,
148
- after: false,
149
- afterEach: false,
150
- before: false,
151
- beforeEach: false,
152
- __filename: false,
153
- },
154
- };
package/Gruntfile.js DELETED
@@ -1,35 +0,0 @@
1
- /*
2
- * Licensed to the Apache Software Foundation (ASF) under one
3
- * or more contributor license agreements. See the NOTICE file
4
- * distributed with this work for additional information
5
- * regarding copyright ownership. The ASF licenses this file
6
- * to you under the Apache License, Version 2.0 (the
7
- * "License"); you may not use this file except in compliance
8
- * with the License. You may obtain a copy of the License at
9
- *
10
- * http://www.apache.org/licenses/LICENSE-2.0
11
- *
12
- * Unless required by applicable law or agreed to in writing,
13
- * software distributed under the License is distributed on an
14
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15
- * KIND, either express or implied. See the License for the
16
- * specific language governing permissions and limitations
17
- * under the License.
18
- */
19
- 'use strict';
20
-
21
- module.exports = function (grunt) {
22
- grunt.loadNpmTasks('grunt-jsdoc');
23
- grunt.initConfig({
24
- jsdoc: {
25
- dist: {
26
- src: ['lib'],
27
- options: {
28
- destination: 'doc',
29
- recurse: true,
30
- readme: 'README.md',
31
- },
32
- },
33
- },
34
- });
35
- };
@@ -1,150 +0,0 @@
1
- <!DOCTYPE html>
2
- <html lang="en">
3
- <head>
4
- <meta charset="utf-8">
5
- <title>JSDoc: Source: DataType.js</title>
6
-
7
- <script src="scripts/prettify/prettify.js"> </script>
8
- <script src="scripts/prettify/lang-css.js"> </script>
9
- <!--[if lt IE 9]>
10
- <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
11
- <![endif]-->
12
- <link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">
13
- <link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css">
14
- </head>
15
-
16
- <body>
17
-
18
- <div id="main">
19
-
20
- <h1 class="page-title">Source: DataType.js</h1>
21
-
22
-
23
-
24
-
25
-
26
-
27
- <section>
28
- <article>
29
- <pre class="prettyprint source linenums"><code>/*
30
- * Licensed to the Apache Software Foundation (ASF) under one
31
- * or more contributor license agreements. See the NOTICE file
32
- * distributed with this work for additional information
33
- * regarding copyright ownership. The ASF licenses this file
34
- * to you under the Apache License, Version 2.0 (the
35
- * "License"); you may not use this file except in compliance
36
- * with the License. You may obtain a copy of the License at
37
- *
38
- * http://www.apache.org/licenses/LICENSE-2.0
39
- *
40
- * Unless required by applicable law or agreed to in writing,
41
- * software distributed under the License is distributed on an
42
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
43
- * KIND, either express or implied. See the License for the
44
- * specific language governing permissions and limitations
45
- * under the License.
46
- */
47
-
48
- /**
49
- * @author Igor Ostapenko
50
- */
51
-
52
- /**
53
- * Represents a GraphBinary data type.
54
- *
55
- * See org.apache.tinkerpop.gremlin.structure.io.binary.DataType Java class.
56
- */
57
- const DataType = {
58
- INT: 0x01,
59
- LONG: 0x02,
60
- STRING: 0x03,
61
- DATE: 0x04,
62
- TIMESTAMP: 0x05,
63
- CLASS: 0x06,
64
- DOUBLE: 0x07,
65
- FLOAT: 0x08,
66
- LIST: 0x09,
67
- MAP: 0x0a,
68
- SET: 0x0b,
69
- UUID: 0x0c,
70
- EDGE: 0x0d,
71
- PATH: 0x0e,
72
- PROPERTY: 0x0f,
73
- GRAPH: 0x10,
74
- VERTEX: 0x11,
75
- VERTEXPROPERTY: 0x12,
76
- BARRIER: 0x13,
77
- BINDING: 0x14,
78
- BYTECODE: 0x15,
79
- CARDINALITY: 0x16,
80
- COLUMN: 0x17,
81
- DIRECTION: 0x18,
82
- OPERATOR: 0x19,
83
- ORDER: 0x1a,
84
- PICK: 0x1b,
85
- POP: 0x1c,
86
- LAMBDA: 0x1d,
87
- P: 0x1e,
88
- SCOPE: 0x1f,
89
- T: 0x20,
90
- TRAVERSER: 0x21,
91
- BIGDECIMAL: 0x22,
92
- BIGINTEGER: 0x23,
93
- BYTE: 0x24,
94
- BYTEBUFFER: 0x25,
95
- SHORT: 0x26,
96
- BOOLEAN: 0x27,
97
- TEXTP: 0x28,
98
- TRAVERSALSTRATEGY: 0x29,
99
- BULKSET: 0x2a,
100
- TREE: 0x2b,
101
- METRICS: 0x2c,
102
- TRAVERSALMETRICS: 0x2d,
103
- MERGE: 0x2e,
104
- DT: 0x2f,
105
- GTYPE: 0x30,
106
-
107
- CHAR: 0x80,
108
- DURATION: 0x81,
109
- INETADDRESS: 0x82,
110
- INSTANT: 0x83,
111
- LOCALDATE: 0x84,
112
- LOCALDATETIME: 0x85,
113
- LOCALTIME: 0x86,
114
- MONTHDAY: 0x87,
115
- OFFSETDATETIME: 0x88,
116
- OFFSETTIME: 0x89,
117
- PERIOD: 0x8a,
118
- YEAR: 0x8b,
119
- YEARMONTH: 0x8c,
120
- ZONEDATETIME: 0x8d,
121
- ZONEOFFSET: 0x8e,
122
-
123
- CUSTOM: 0,
124
- UNSPECIFIED_NULL: 0xfe,
125
- };
126
-
127
- export default DataType;
128
- </code></pre>
129
- </article>
130
- </section>
131
-
132
-
133
-
134
-
135
- </div>
136
-
137
- <nav>
138
- <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="module.exports.html">exports</a></li></ul><h3>Global</h3><ul><li><a href="global.html#DataType">DataType</a></li></ul>
139
- </nav>
140
-
141
- <br class="clear">
142
-
143
- <footer>
144
- Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Mon Nov 10 2025 14:42:27 GMT-0800 (Pacific Standard Time)
145
- </footer>
146
-
147
- <script> prettyPrint(); </script>
148
- <script src="scripts/linenumber.js"> </script>
149
- </body>
150
- </html>