Added: tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/fonts/OpenSans-Regular-webfont.woff URL: http://svn.apache.org/viewvc/tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/fonts/OpenSans-Regular-webfont.woff?rev=1846578&view=auto ============================================================================== Binary file - no diff available.
Propchange: tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/fonts/OpenSans-Regular-webfont.woff ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/global.html URL: http://svn.apache.org/viewvc/tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/global.html?rev=1846578&view=auto ============================================================================== --- tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/global.html (added) +++ tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/global.html Wed Nov 14 12:33:19 2018 @@ -0,0 +1,201 @@ +<!DOCTYPE html> +<html lang="en"> +<head> + <meta charset="utf-8"> + <title>JSDoc: Global</title> + + <script src="scripts/prettify/prettify.js"> </script> + <script src="scripts/prettify/lang-css.js"> </script> + <!--[if lt IE 9]> + <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script> + <![endif]--> + <link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css"> + <link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css"> +</head> + +<body> + +<div id="main"> + + <h1 class="page-title">Global</h1> + + + + + + +<section> + +<header> + + <h2></h2> + + +</header> + +<article> + <div class="container-overview"> + + + + + + +<dl class="details"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +</dl> + + + + + </div> + + + + + + + + + + + + + + + <h3 class="subsection-title">Members</h3> + + + +<h4 class="name" id="statics"><span class="type-signature">(constant) </span>statics<span class="type-signature"> :Object</span></h4> + + + + +<div class="description"> + Contains the static method definitions +</div> + + + + <h5>Type:</h5> + <ul> + <li> + +<span class="param-type">Object</span> + + + </li> + </ul> + + + + + +<dl class="details"> + + + + + + + + + + + + + + + + + + + + + + + + + + + <dt class="tag-source">Source:</dt> + <dd class="tag-source"><ul class="dummy"><li> + <a href="process_graph-traversal.js.html">process/graph-traversal.js</a>, <a href="process_graph-traversal.js.html#line1216">line 1216</a> + </li></ul></dd> + + + + + + + +</dl> + + + + + + + + + + + + + + +</article> + +</section> + + + + +</div> + +<nav> + <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="GraphSONReader.html">GraphSONReader</a></li><li><a href="GraphSONWriter.html">GraphSONWriter</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="P.html">P</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="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="TextP.html">TextP</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> +</nav> + +<br class="clear"> + +<footer> + Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Wed Nov 14 2018 07:31:46 GMT-0500 (EST) +</footer> + +<script> prettyPrint(); </script> +<script src="scripts/linenumber.js"> </script> +</body> +</html> \ No newline at end of file Added: tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/index.html URL: http://svn.apache.org/viewvc/tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/index.html?rev=1846578&view=auto ============================================================================== --- tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/index.html (added) +++ tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/index.html Wed Nov 14 12:33:19 2018 @@ -0,0 +1,94 @@ +<!DOCTYPE html> +<html lang="en"> +<head> + <meta charset="utf-8"> + <title>JSDoc: Home</title> + + <script src="scripts/prettify/prettify.js"> </script> + <script src="scripts/prettify/lang-css.js"> </script> + <!--[if lt IE 9]> + <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script> + <![endif]--> + <link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css"> + <link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css"> +</head> + +<body> + +<div id="main"> + + <h1 class="page-title">Home</h1> + + + + + + + + + <h3> </h3> + + + + + + + + + + + + + + + + <section> + <article><!-- + + Licensed to the Apache Software Foundation (ASF) under one + or more contributor license agreements. See the NOTICE file + distributed with this work for additional information + regarding copyright ownership. The ASF licenses this file + to you under the Apache License, Version 2.0 (the + "License"); you may not use this file except in compliance + with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, + software distributed under the License is distributed on an + "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + KIND, either express or implied. See the License for the + specific language governing permissions and limitations + under the License. + +--> +<h1>JavaScript Gremlin Language Variant</h1><p><a href="http://tinkerpop.apache.org">Apache TinkerPopâ¢</a> is a graph computing framework for both graph databases (OLTP) and graph analytic systems +(OLAP). <a href="http://tinkerpop.apache.org/gremlin.html">Gremlin</a> is the graph traversal language of TinkerPop. It can be described as a functional, +data-flow language that enables users to succinctly express complex traversals on (or queries of) their application's +property graph.</p> +<p>Gremlin-Javascript implements Gremlin within the JavaScript language and can be used on Node.js.</p> +<pre class="prettyprint source lang-bash"><code>npm install gremlin</code></pre><p>Please see the <a href="http://tinkerpop.apache.org/docs/current/reference/#gremlin-javascript">reference documentation</a> at Apache TinkerPop for more information.</p></article> + </section> + + + + + + +</div> + +<nav> + <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="GraphSONReader.html">GraphSONReader</a></li><li><a href="GraphSONWriter.html">GraphSONWriter</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="P.html">P</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="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="TextP.html">TextP</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> +</nav> + +<br class="clear"> + +<footer> + Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Wed Nov 14 2018 07:31:46 GMT-0500 (EST) +</footer> + +<script> prettyPrint(); </script> +<script src="scripts/linenumber.js"> </script> +</body> +</html> \ No newline at end of file Added: tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/process_anonymous-traversal.js.html URL: http://svn.apache.org/viewvc/tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/process_anonymous-traversal.js.html?rev=1846578&view=auto ============================================================================== --- tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/process_anonymous-traversal.js.html (added) +++ tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/process_anonymous-traversal.js.html Wed Nov 14 12:33:19 2018 @@ -0,0 +1,114 @@ +<!DOCTYPE html> +<html lang="en"> +<head> + <meta charset="utf-8"> + <title>JSDoc: Source: process/anonymous-traversal.js</title> + + <script src="scripts/prettify/prettify.js"> </script> + <script src="scripts/prettify/lang-css.js"> </script> + <!--[if lt IE 9]> + <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script> + <![endif]--> + <link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css"> + <link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css"> +</head> + +<body> + +<div id="main"> + + <h1 class="page-title">Source: process/anonymous-traversal.js</h1> + + + + + + + <section> + <article> + <pre class="prettyprint source linenums"><code>/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +'use strict'; + +const graphTraversalModule = require('./graph-traversal'); +const TraversalStrategies = require('./traversal-strategy').TraversalStrategies; +const GraphTraversalSource = graphTraversalModule.GraphTraversalSource; +const Graph = require('../structure/graph').Graph; + +/** + * Provides a unified way to construct a <code>TraversalSource</code> from the perspective of the traversal. In this + * syntax the user is creating the source and binding it to a reference which is either an existing <code>Graph</code> + * instance or a <code>RemoteConnection</code>. + */ +class AnonymousTraversalSource { + + /** + * Constructs an {@code AnonymousTraversalSource} which will then be configured to spawn a + * {@link GraphTraversalSource}. + * @returns {AnonymousTraversalSource}. + */ + static traversal() { + return new AnonymousTraversalSource(); + } + + /** + * Creates the specified {@link GraphTraversalSource{ binding a {@link RemoteConnection} as its reference such that + * traversals spawned from it will execute over that reference. + * @param {GraphTraversalSource} remoteConnection + * @return {GraphTraversalSource} + */ + withRemote(remoteConnection) { + return this.withGraph(new Graph()).withRemote(remoteConnection); + } + + /** + * Creates the specified {@link GraphTraversalSource} binding a {@link Graph} as its reference such that traversals + * spawned from it will execute over that reference. + * @param {Graph} graph + * @return {GraphTraversalSource} + */ + withGraph(graph) { + return new GraphTraversalSource(graph, new TraversalStrategies()); + } +} + +module.exports = AnonymousTraversalSource;</code></pre> + </article> + </section> + + + + +</div> + +<nav> + <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="GraphSONReader.html">GraphSONReader</a></li><li><a href="GraphSONWriter.html">GraphSONWriter</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="P.html">P</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="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="TextP.html">TextP</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> +</nav> + +<br class="clear"> + +<footer> + Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Wed Nov 14 2018 07:31:46 GMT-0500 (EST) +</footer> + +<script> prettyPrint(); </script> +<script src="scripts/linenumber.js"> </script> +</body> +</html> Added: tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/process_bytecode.js.html URL: http://svn.apache.org/viewvc/tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/process_bytecode.js.html?rev=1846578&view=auto ============================================================================== --- tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/process_bytecode.js.html (added) +++ tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/process_bytecode.js.html Wed Nov 14 12:33:19 2018 @@ -0,0 +1,147 @@ +<!DOCTYPE html> +<html lang="en"> +<head> + <meta charset="utf-8"> + <title>JSDoc: Source: process/bytecode.js</title> + + <script src="scripts/prettify/prettify.js"> </script> + <script src="scripts/prettify/lang-css.js"> </script> + <!--[if lt IE 9]> + <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script> + <![endif]--> + <link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css"> + <link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css"> +</head> + +<body> + +<div id="main"> + + <h1 class="page-title">Source: process/bytecode.js</h1> + + + + + + + <section> + <article> + <pre class="prettyprint source linenums"><code>/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +/** + * @author Jorge Bay Gondra + */ +'use strict'; + +class Bytecode { + /** + * Creates a new instance of Bytecode + * @param {Bytecode} [toClone] + */ + constructor(toClone) { + if (!toClone) { + this.sourceInstructions = []; + this.stepInstructions = []; + } + else { + this.sourceInstructions = [...toClone.sourceInstructions]; + this.stepInstructions = [...toClone.stepInstructions]; + } + } + + /** + * Adds a new source instructions + * @param {String} name + * @param {Array} values + * @returns {Bytecode} + */ + addSource(name, values) { + if (name === undefined) { + throw new Error('Name is not defined'); + } + const instruction = new Array(values.length + 1); + instruction[0] = name; + for (let i = 0; i < values.length; ++i) { + instruction[i + 1] = values[i]; + } + this.sourceInstructions.push(Bytecode._generateInstruction(name, values)); + return this; + } + + /** + * Adds a new step instructions + * @param {String} name + * @param {Array} values + * @returns {Bytecode} + */ + addStep(name, values) { + if (name === undefined) { + throw new Error('Name is not defined'); + } + this.stepInstructions.push(Bytecode._generateInstruction(name, values)); + return this; + } + + static _generateInstruction(name, values) { + const length = (values ? values.length : 0) + 1; + const instruction = new Array(length); + instruction[0] = name; + for (let i = 1; i < length; i++) { + instruction[i] = values[i - 1]; + } + return instruction; + } + + /** + * Returns the JSON representation of the source and step instructions + * @returns {String} + */ + toString() { + return ( + (this.sourceInstructions.length > 0 ? JSON.stringify(this.sourceInstructions) : '') + + (this.stepInstructions.length > 0 ? JSON.stringify(this.stepInstructions) : '') + ); + } +} + +module.exports = Bytecode; +</code></pre> + </article> + </section> + + + + +</div> + +<nav> + <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="GraphSONReader.html">GraphSONReader</a></li><li><a href="GraphSONWriter.html">GraphSONWriter</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="P.html">P</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="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="TextP.html">TextP</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> +</nav> + +<br class="clear"> + +<footer> + Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Wed Nov 14 2018 07:31:46 GMT-0500 (EST) +</footer> + +<script> prettyPrint(); </script> +<script src="scripts/linenumber.js"> </script> +</body> +</html> Added: tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/process_graph-traversal.js.html URL: http://svn.apache.org/viewvc/tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/process_graph-traversal.js.html?rev=1846578&view=auto ============================================================================== --- tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/process_graph-traversal.js.html (added) +++ tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/process_graph-traversal.js.html Wed Nov 14 12:33:19 2018 @@ -0,0 +1,1361 @@ +<!DOCTYPE html> +<html lang="en"> +<head> + <meta charset="utf-8"> + <title>JSDoc: Source: process/graph-traversal.js</title> + + <script src="scripts/prettify/prettify.js"> </script> + <script src="scripts/prettify/lang-css.js"> </script> + <!--[if lt IE 9]> + <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script> + <![endif]--> + <link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css"> + <link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css"> +</head> + +<body> + +<div id="main"> + + <h1 class="page-title">Source: process/graph-traversal.js</h1> + + + + + + + <section> + <article> + <pre class="prettyprint source linenums"><code>/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +/** + * @author Jorge Bay Gondra + */ +'use strict'; + +const Traversal = require('./traversal').Traversal; +const remote = require('../driver/remote-connection'); +const utils = require('../utils'); +const Bytecode = require('./bytecode'); +const TraversalStrategies = require('./traversal-strategy').TraversalStrategies; + + +/** + * Represents the primary DSL of the Gremlin traversal machine. + */ +class GraphTraversalSource { + /** + * @param {Graph} graph + * @param {TraversalStrategies} traversalStrategies + * @param {Bytecode} [bytecode] + */ + constructor(graph, traversalStrategies, bytecode) { + this.graph = graph; + this.traversalStrategies = traversalStrategies; + this.bytecode = bytecode || new Bytecode(); + } + + /** + * @param remoteConnection + * @returns {GraphTraversalSource} + */ + withRemote(remoteConnection) { + const traversalStrategy = new TraversalStrategies(this.traversalStrategies); + traversalStrategy.addStrategy(new remote.RemoteStrategy(remoteConnection)); + return new GraphTraversalSource(this.graph, traversalStrategy, new Bytecode(this.bytecode)); + } + + /** + * Returns the string representation of the GraphTraversalSource. + * @returns {string} + */ + toString() { + return 'graphtraversalsource[' + this.graph.toString() + ']'; + } + + /** + * Graph Traversal Source with method. + * @param {...Object} args + * @returns {GraphTraversalSource} + */ + with_(...args) { + const b = new Bytecode(this.bytecode).addSource('with', args); + return new GraphTraversalSource(this.graph, new TraversalStrategies(this.traversalStrategies), b); + } + + /** + * Graph Traversal Source withBulk method. + * @param {...Object} args + * @returns {GraphTraversalSource} + */ + withBulk(...args) { + const b = new Bytecode(this.bytecode).addSource('withBulk', args); + return new GraphTraversalSource(this.graph, new TraversalStrategies(this.traversalStrategies), b); + } + + /** + * Graph Traversal Source withPath method. + * @param {...Object} args + * @returns {GraphTraversalSource} + */ + withPath(...args) { + const b = new Bytecode(this.bytecode).addSource('withPath', args); + return new GraphTraversalSource(this.graph, new TraversalStrategies(this.traversalStrategies), b); + } + + /** + * Graph Traversal Source withSack method. + * @param {...Object} args + * @returns {GraphTraversalSource} + */ + withSack(...args) { + const b = new Bytecode(this.bytecode).addSource('withSack', args); + return new GraphTraversalSource(this.graph, new TraversalStrategies(this.traversalStrategies), b); + } + + /** + * Graph Traversal Source withSideEffect method. + * @param {...Object} args + * @returns {GraphTraversalSource} + */ + withSideEffect(...args) { + const b = new Bytecode(this.bytecode).addSource('withSideEffect', args); + return new GraphTraversalSource(this.graph, new TraversalStrategies(this.traversalStrategies), b); + } + + /** + * Graph Traversal Source withStrategies method. + * @param {...Object} args + * @returns {GraphTraversalSource} + */ + withStrategies(...args) { + const b = new Bytecode(this.bytecode).addSource('withStrategies', args); + return new GraphTraversalSource(this.graph, new TraversalStrategies(this.traversalStrategies), b); + } + + /** + * Graph Traversal Source withoutStrategies method. + * @param {...Object} args + * @returns {GraphTraversalSource} + */ + withoutStrategies(...args) { + const b = new Bytecode(this.bytecode).addSource('withoutStrategies', args); + return new GraphTraversalSource(this.graph, new TraversalStrategies(this.traversalStrategies), b); + } + + /** + * E GraphTraversalSource step method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + E(...args) { + const b = new Bytecode(this.bytecode).addStep('E', args); + return new GraphTraversal(this.graph, new TraversalStrategies(this.traversalStrategies), b); + } + + /** + * V GraphTraversalSource step method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + V(...args) { + const b = new Bytecode(this.bytecode).addStep('V', args); + return new GraphTraversal(this.graph, new TraversalStrategies(this.traversalStrategies), b); + } + + /** + * addE GraphTraversalSource step method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + addE(...args) { + const b = new Bytecode(this.bytecode).addStep('addE', args); + return new GraphTraversal(this.graph, new TraversalStrategies(this.traversalStrategies), b); + } + + /** + * addV GraphTraversalSource step method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + addV(...args) { + const b = new Bytecode(this.bytecode).addStep('addV', args); + return new GraphTraversal(this.graph, new TraversalStrategies(this.traversalStrategies), b); + } + + /** + * inject GraphTraversalSource step method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + inject(...args) { + const b = new Bytecode(this.bytecode).addStep('inject', args); + return new GraphTraversal(this.graph, new TraversalStrategies(this.traversalStrategies), b); + } + + /** + * io GraphTraversalSource step method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + io(...args) { + const b = new Bytecode(this.bytecode).addStep('io', args); + return new GraphTraversal(this.graph, new TraversalStrategies(this.traversalStrategies), b); + } + +} + +/** + * Represents a graph traversal. + */ +class GraphTraversal extends Traversal { + constructor(graph, traversalStrategies, bytecode) { + super(graph, traversalStrategies, bytecode); + } + + /** + * Graph traversal V method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + V(...args) { + this.bytecode.addStep('V', args); + return this; + } + + /** + * Graph traversal addE method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + addE(...args) { + this.bytecode.addStep('addE', args); + return this; + } + + /** + * Graph traversal addV method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + addV(...args) { + this.bytecode.addStep('addV', args); + return this; + } + + /** + * Graph traversal aggregate method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + aggregate(...args) { + this.bytecode.addStep('aggregate', args); + return this; + } + + /** + * Graph traversal and method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + and(...args) { + this.bytecode.addStep('and', args); + return this; + } + + /** + * Graph traversal as method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + as(...args) { + this.bytecode.addStep('as', args); + return this; + } + + /** + * Graph traversal barrier method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + barrier(...args) { + this.bytecode.addStep('barrier', args); + return this; + } + + /** + * Graph traversal both method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + both(...args) { + this.bytecode.addStep('both', args); + return this; + } + + /** + * Graph traversal bothE method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + bothE(...args) { + this.bytecode.addStep('bothE', args); + return this; + } + + /** + * Graph traversal bothV method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + bothV(...args) { + this.bytecode.addStep('bothV', args); + return this; + } + + /** + * Graph traversal branch method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + branch(...args) { + this.bytecode.addStep('branch', args); + return this; + } + + /** + * Graph traversal by method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + by(...args) { + this.bytecode.addStep('by', args); + return this; + } + + /** + * Graph traversal cap method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + cap(...args) { + this.bytecode.addStep('cap', args); + return this; + } + + /** + * Graph traversal choose method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + choose(...args) { + this.bytecode.addStep('choose', args); + return this; + } + + /** + * Graph traversal coalesce method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + coalesce(...args) { + this.bytecode.addStep('coalesce', args); + return this; + } + + /** + * Graph traversal coin method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + coin(...args) { + this.bytecode.addStep('coin', args); + return this; + } + + /** + * Graph traversal connectedComponent method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + connectedComponent(...args) { + this.bytecode.addStep('connectedComponent', args); + return this; + } + + /** + * Graph traversal constant method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + constant(...args) { + this.bytecode.addStep('constant', args); + return this; + } + + /** + * Graph traversal count method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + count(...args) { + this.bytecode.addStep('count', args); + return this; + } + + /** + * Graph traversal cyclicPath method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + cyclicPath(...args) { + this.bytecode.addStep('cyclicPath', args); + return this; + } + + /** + * Graph traversal dedup method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + dedup(...args) { + this.bytecode.addStep('dedup', args); + return this; + } + + /** + * Graph traversal drop method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + drop(...args) { + this.bytecode.addStep('drop', args); + return this; + } + + /** + * Graph traversal emit method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + emit(...args) { + this.bytecode.addStep('emit', args); + return this; + } + + /** + * Graph traversal filter method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + filter(...args) { + this.bytecode.addStep('filter', args); + return this; + } + + /** + * Graph traversal flatMap method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + flatMap(...args) { + this.bytecode.addStep('flatMap', args); + return this; + } + + /** + * Graph traversal fold method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + fold(...args) { + this.bytecode.addStep('fold', args); + return this; + } + + /** + * Graph traversal from method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + from_(...args) { + this.bytecode.addStep('from', args); + return this; + } + + /** + * Graph traversal group method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + group(...args) { + this.bytecode.addStep('group', args); + return this; + } + + /** + * Graph traversal groupCount method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + groupCount(...args) { + this.bytecode.addStep('groupCount', args); + return this; + } + + /** + * Graph traversal has method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + has(...args) { + this.bytecode.addStep('has', args); + return this; + } + + /** + * Graph traversal hasId method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + hasId(...args) { + this.bytecode.addStep('hasId', args); + return this; + } + + /** + * Graph traversal hasKey method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + hasKey(...args) { + this.bytecode.addStep('hasKey', args); + return this; + } + + /** + * Graph traversal hasLabel method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + hasLabel(...args) { + this.bytecode.addStep('hasLabel', args); + return this; + } + + /** + * Graph traversal hasNot method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + hasNot(...args) { + this.bytecode.addStep('hasNot', args); + return this; + } + + /** + * Graph traversal hasValue method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + hasValue(...args) { + this.bytecode.addStep('hasValue', args); + return this; + } + + /** + * Graph traversal id method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + id(...args) { + this.bytecode.addStep('id', args); + return this; + } + + /** + * Graph traversal identity method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + identity(...args) { + this.bytecode.addStep('identity', args); + return this; + } + + /** + * Graph traversal in method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + in_(...args) { + this.bytecode.addStep('in', args); + return this; + } + + /** + * Graph traversal inE method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + inE(...args) { + this.bytecode.addStep('inE', args); + return this; + } + + /** + * Graph traversal inV method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + inV(...args) { + this.bytecode.addStep('inV', args); + return this; + } + + /** + * Graph traversal inject method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + inject(...args) { + this.bytecode.addStep('inject', args); + return this; + } + + /** + * Graph traversal is method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + is(...args) { + this.bytecode.addStep('is', args); + return this; + } + + /** + * Graph traversal key method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + key(...args) { + this.bytecode.addStep('key', args); + return this; + } + + /** + * Graph traversal label method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + label(...args) { + this.bytecode.addStep('label', args); + return this; + } + + /** + * Graph traversal limit method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + limit(...args) { + this.bytecode.addStep('limit', args); + return this; + } + + /** + * Graph traversal local method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + local(...args) { + this.bytecode.addStep('local', args); + return this; + } + + /** + * Graph traversal loops method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + loops(...args) { + this.bytecode.addStep('loops', args); + return this; + } + + /** + * Graph traversal map method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + map(...args) { + this.bytecode.addStep('map', args); + return this; + } + + /** + * Graph traversal match method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + match(...args) { + this.bytecode.addStep('match', args); + return this; + } + + /** + * Graph traversal math method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + math(...args) { + this.bytecode.addStep('math', args); + return this; + } + + /** + * Graph traversal max method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + max(...args) { + this.bytecode.addStep('max', args); + return this; + } + + /** + * Graph traversal mean method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + mean(...args) { + this.bytecode.addStep('mean', args); + return this; + } + + /** + * Graph traversal min method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + min(...args) { + this.bytecode.addStep('min', args); + return this; + } + + /** + * Graph traversal not method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + not(...args) { + this.bytecode.addStep('not', args); + return this; + } + + /** + * Graph traversal option method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + option(...args) { + this.bytecode.addStep('option', args); + return this; + } + + /** + * Graph traversal optional method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + optional(...args) { + this.bytecode.addStep('optional', args); + return this; + } + + /** + * Graph traversal or method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + or(...args) { + this.bytecode.addStep('or', args); + return this; + } + + /** + * Graph traversal order method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + order(...args) { + this.bytecode.addStep('order', args); + return this; + } + + /** + * Graph traversal otherV method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + otherV(...args) { + this.bytecode.addStep('otherV', args); + return this; + } + + /** + * Graph traversal out method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + out(...args) { + this.bytecode.addStep('out', args); + return this; + } + + /** + * Graph traversal outE method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + outE(...args) { + this.bytecode.addStep('outE', args); + return this; + } + + /** + * Graph traversal outV method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + outV(...args) { + this.bytecode.addStep('outV', args); + return this; + } + + /** + * Graph traversal pageRank method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + pageRank(...args) { + this.bytecode.addStep('pageRank', args); + return this; + } + + /** + * Graph traversal path method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + path(...args) { + this.bytecode.addStep('path', args); + return this; + } + + /** + * Graph traversal peerPressure method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + peerPressure(...args) { + this.bytecode.addStep('peerPressure', args); + return this; + } + + /** + * Graph traversal profile method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + profile(...args) { + this.bytecode.addStep('profile', args); + return this; + } + + /** + * Graph traversal program method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + program(...args) { + this.bytecode.addStep('program', args); + return this; + } + + /** + * Graph traversal project method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + project(...args) { + this.bytecode.addStep('project', args); + return this; + } + + /** + * Graph traversal properties method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + properties(...args) { + this.bytecode.addStep('properties', args); + return this; + } + + /** + * Graph traversal property method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + property(...args) { + this.bytecode.addStep('property', args); + return this; + } + + /** + * Graph traversal propertyMap method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + propertyMap(...args) { + this.bytecode.addStep('propertyMap', args); + return this; + } + + /** + * Graph traversal range method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + range(...args) { + this.bytecode.addStep('range', args); + return this; + } + + /** + * Graph traversal read method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + read(...args) { + this.bytecode.addStep('read', args); + return this; + } + + /** + * Graph traversal repeat method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + repeat(...args) { + this.bytecode.addStep('repeat', args); + return this; + } + + /** + * Graph traversal sack method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + sack(...args) { + this.bytecode.addStep('sack', args); + return this; + } + + /** + * Graph traversal sample method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + sample(...args) { + this.bytecode.addStep('sample', args); + return this; + } + + /** + * Graph traversal select method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + select(...args) { + this.bytecode.addStep('select', args); + return this; + } + + /** + * Graph traversal shortestPath method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + shortestPath(...args) { + this.bytecode.addStep('shortestPath', args); + return this; + } + + /** + * Graph traversal sideEffect method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + sideEffect(...args) { + this.bytecode.addStep('sideEffect', args); + return this; + } + + /** + * Graph traversal simplePath method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + simplePath(...args) { + this.bytecode.addStep('simplePath', args); + return this; + } + + /** + * Graph traversal skip method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + skip(...args) { + this.bytecode.addStep('skip', args); + return this; + } + + /** + * Graph traversal store method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + store(...args) { + this.bytecode.addStep('store', args); + return this; + } + + /** + * Graph traversal subgraph method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + subgraph(...args) { + this.bytecode.addStep('subgraph', args); + return this; + } + + /** + * Graph traversal sum method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + sum(...args) { + this.bytecode.addStep('sum', args); + return this; + } + + /** + * Graph traversal tail method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + tail(...args) { + this.bytecode.addStep('tail', args); + return this; + } + + /** + * Graph traversal timeLimit method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + timeLimit(...args) { + this.bytecode.addStep('timeLimit', args); + return this; + } + + /** + * Graph traversal times method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + times(...args) { + this.bytecode.addStep('times', args); + return this; + } + + /** + * Graph traversal to method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + to(...args) { + this.bytecode.addStep('to', args); + return this; + } + + /** + * Graph traversal toE method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + toE(...args) { + this.bytecode.addStep('toE', args); + return this; + } + + /** + * Graph traversal toV method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + toV(...args) { + this.bytecode.addStep('toV', args); + return this; + } + + /** + * Graph traversal tree method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + tree(...args) { + this.bytecode.addStep('tree', args); + return this; + } + + /** + * Graph traversal unfold method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + unfold(...args) { + this.bytecode.addStep('unfold', args); + return this; + } + + /** + * Graph traversal union method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + union(...args) { + this.bytecode.addStep('union', args); + return this; + } + + /** + * Graph traversal until method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + until(...args) { + this.bytecode.addStep('until', args); + return this; + } + + /** + * Graph traversal value method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + value(...args) { + this.bytecode.addStep('value', args); + return this; + } + + /** + * Graph traversal valueMap method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + valueMap(...args) { + this.bytecode.addStep('valueMap', args); + return this; + } + + /** + * Graph traversal values method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + values(...args) { + this.bytecode.addStep('values', args); + return this; + } + + /** + * Graph traversal where method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + where(...args) { + this.bytecode.addStep('where', args); + return this; + } + + /** + * Graph traversal with method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + with_(...args) { + this.bytecode.addStep('with', args); + return this; + } + + /** + * Graph traversal write method. + * @param {...Object} args + * @returns {GraphTraversal} + */ + write(...args) { + this.bytecode.addStep('write', args); + return this; + } + +} + +function callOnEmptyTraversal(fnName, args) { + const g = new GraphTraversal(null, null, new Bytecode()); + return g[fnName].apply(g, args); +} + +/** + * Contains the static method definitions + * @type {Object} + */ +const statics = { + V: (...args) => callOnEmptyTraversal('V', args), + addE: (...args) => callOnEmptyTraversal('addE', args), + addV: (...args) => callOnEmptyTraversal('addV', args), + aggregate: (...args) => callOnEmptyTraversal('aggregate', args), + and: (...args) => callOnEmptyTraversal('and', args), + as: (...args) => callOnEmptyTraversal('as', args), + barrier: (...args) => callOnEmptyTraversal('barrier', args), + both: (...args) => callOnEmptyTraversal('both', args), + bothE: (...args) => callOnEmptyTraversal('bothE', args), + bothV: (...args) => callOnEmptyTraversal('bothV', args), + branch: (...args) => callOnEmptyTraversal('branch', args), + cap: (...args) => callOnEmptyTraversal('cap', args), + choose: (...args) => callOnEmptyTraversal('choose', args), + coalesce: (...args) => callOnEmptyTraversal('coalesce', args), + coin: (...args) => callOnEmptyTraversal('coin', args), + constant: (...args) => callOnEmptyTraversal('constant', args), + count: (...args) => callOnEmptyTraversal('count', args), + cyclicPath: (...args) => callOnEmptyTraversal('cyclicPath', args), + dedup: (...args) => callOnEmptyTraversal('dedup', args), + drop: (...args) => callOnEmptyTraversal('drop', args), + emit: (...args) => callOnEmptyTraversal('emit', args), + filter: (...args) => callOnEmptyTraversal('filter', args), + flatMap: (...args) => callOnEmptyTraversal('flatMap', args), + fold: (...args) => callOnEmptyTraversal('fold', args), + group: (...args) => callOnEmptyTraversal('group', args), + groupCount: (...args) => callOnEmptyTraversal('groupCount', args), + has: (...args) => callOnEmptyTraversal('has', args), + hasId: (...args) => callOnEmptyTraversal('hasId', args), + hasKey: (...args) => callOnEmptyTraversal('hasKey', args), + hasLabel: (...args) => callOnEmptyTraversal('hasLabel', args), + hasNot: (...args) => callOnEmptyTraversal('hasNot', args), + hasValue: (...args) => callOnEmptyTraversal('hasValue', args), + id: (...args) => callOnEmptyTraversal('id', args), + identity: (...args) => callOnEmptyTraversal('identity', args), + in_: (...args) => callOnEmptyTraversal('in_', args), + inE: (...args) => callOnEmptyTraversal('inE', args), + inV: (...args) => callOnEmptyTraversal('inV', args), + inject: (...args) => callOnEmptyTraversal('inject', args), + is: (...args) => callOnEmptyTraversal('is', args), + key: (...args) => callOnEmptyTraversal('key', args), + label: (...args) => callOnEmptyTraversal('label', args), + limit: (...args) => callOnEmptyTraversal('limit', args), + local: (...args) => callOnEmptyTraversal('local', args), + loops: (...args) => callOnEmptyTraversal('loops', args), + map: (...args) => callOnEmptyTraversal('map', args), + match: (...args) => callOnEmptyTraversal('match', args), + math: (...args) => callOnEmptyTraversal('math', args), + max: (...args) => callOnEmptyTraversal('max', args), + mean: (...args) => callOnEmptyTraversal('mean', args), + min: (...args) => callOnEmptyTraversal('min', args), + not: (...args) => callOnEmptyTraversal('not', args), + optional: (...args) => callOnEmptyTraversal('optional', args), + or: (...args) => callOnEmptyTraversal('or', args), + order: (...args) => callOnEmptyTraversal('order', args), + otherV: (...args) => callOnEmptyTraversal('otherV', args), + out: (...args) => callOnEmptyTraversal('out', args), + outE: (...args) => callOnEmptyTraversal('outE', args), + outV: (...args) => callOnEmptyTraversal('outV', args), + path: (...args) => callOnEmptyTraversal('path', args), + project: (...args) => callOnEmptyTraversal('project', args), + properties: (...args) => callOnEmptyTraversal('properties', args), + property: (...args) => callOnEmptyTraversal('property', args), + propertyMap: (...args) => callOnEmptyTraversal('propertyMap', args), + range: (...args) => callOnEmptyTraversal('range', args), + repeat: (...args) => callOnEmptyTraversal('repeat', args), + sack: (...args) => callOnEmptyTraversal('sack', args), + sample: (...args) => callOnEmptyTraversal('sample', args), + select: (...args) => callOnEmptyTraversal('select', args), + sideEffect: (...args) => callOnEmptyTraversal('sideEffect', args), + simplePath: (...args) => callOnEmptyTraversal('simplePath', args), + skip: (...args) => callOnEmptyTraversal('skip', args), + store: (...args) => callOnEmptyTraversal('store', args), + subgraph: (...args) => callOnEmptyTraversal('subgraph', args), + sum: (...args) => callOnEmptyTraversal('sum', args), + tail: (...args) => callOnEmptyTraversal('tail', args), + timeLimit: (...args) => callOnEmptyTraversal('timeLimit', args), + times: (...args) => callOnEmptyTraversal('times', args), + to: (...args) => callOnEmptyTraversal('to', args), + toE: (...args) => callOnEmptyTraversal('toE', args), + toV: (...args) => callOnEmptyTraversal('toV', args), + tree: (...args) => callOnEmptyTraversal('tree', args), + unfold: (...args) => callOnEmptyTraversal('unfold', args), + union: (...args) => callOnEmptyTraversal('union', args), + until: (...args) => callOnEmptyTraversal('until', args), + value: (...args) => callOnEmptyTraversal('value', args), + valueMap: (...args) => callOnEmptyTraversal('valueMap', args), + values: (...args) => callOnEmptyTraversal('values', args), + where: (...args) => callOnEmptyTraversal('where', args) +}; + +module.exports = { + GraphTraversal, + GraphTraversalSource, + statics +};</code></pre> + </article> + </section> + + + + +</div> + +<nav> + <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="GraphSONReader.html">GraphSONReader</a></li><li><a href="GraphSONWriter.html">GraphSONWriter</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="P.html">P</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="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="TextP.html">TextP</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> +</nav> + +<br class="clear"> + +<footer> + Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Wed Nov 14 2018 07:31:46 GMT-0500 (EST) +</footer> + +<script> prettyPrint(); </script> +<script src="scripts/linenumber.js"> </script> +</body> +</html> Added: tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/process_translator.js.html URL: http://svn.apache.org/viewvc/tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/process_translator.js.html?rev=1846578&view=auto ============================================================================== --- tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/process_translator.js.html (added) +++ tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/process_translator.js.html Wed Nov 14 12:33:19 2018 @@ -0,0 +1,143 @@ +<!DOCTYPE html> +<html lang="en"> +<head> + <meta charset="utf-8"> + <title>JSDoc: Source: process/translator.js</title> + + <script src="scripts/prettify/prettify.js"> </script> + <script src="scripts/prettify/lang-css.js"> </script> + <!--[if lt IE 9]> + <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script> + <![endif]--> + <link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css"> + <link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css"> +</head> + +<body> + +<div id="main"> + + <h1 class="page-title">Source: process/translator.js</h1> + + + + + + + <section> + <article> + <pre class="prettyprint source linenums"><code>/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +'use strict'; + +/** + * Class to translate glv bytecode steps into executable Gremlin-Groovy script + */ +class Translator { + constructor(traversalSource) { + this._traversalSource = traversalSource; + } + + getTraversalSource() { + return this._traversalSource; + } + + getTargetLanguage() { + return "gremlin-groovy"; + } + + of(traversalSource) { + this._traversalSource = traversalSource; + } + + /** + * Returns a script representation of the given bytecode instructions. + * @param {Object} bytecode The bytecode object containing step instructions. + * @returns {string} Gremlin-Groovy script + */ + translate(bytecode) { + let script = this._traversalSource; + let instructions = bytecode.stepInstructions; + + // build the script from the glv instructions. + for (let i = 0; i < instructions.length; i++) { + const params = instructions[i].slice(1); + script += '.' + instructions[i][0] + '('; + + if (params.length) { + for (let k = 0; k < params.length; k++) { + if (k > 0) { + script += ', '; + } + + if (Object(params[k]) === params[k]) { + if (params[k].toString() === '[object Object]') { + Object.keys(params[k]).forEach(function(key, index) { + if (index > 0) script += ', '; + script += '(\'' + key + '\', '; + if (params[k][key] instanceof String || typeof params[k][key] === 'string') { + script += '\'' + params[k][key] + '\''; + } else { + script += params[k][key]; + } + script += ')'; + }); + } else { + script += params[k].toString(); + } + } else if (params[k] === undefined) { + script += ''; + } else if (typeof params[k] === 'number') { + script += params[k]; + } else { + script += '\'' + params[k] + '\''; + } + } + } + + script += ')'; + } + + return script; + } +} + +module.exports = Translator;</code></pre> + </article> + </section> + + + + +</div> + +<nav> + <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="GraphSONReader.html">GraphSONReader</a></li><li><a href="GraphSONWriter.html">GraphSONWriter</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="P.html">P</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="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="TextP.html">TextP</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> +</nav> + +<br class="clear"> + +<footer> + Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Wed Nov 14 2018 07:31:46 GMT-0500 (EST) +</footer> + +<script> prettyPrint(); </script> +<script src="scripts/linenumber.js"> </script> +</body> +</html> Added: tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/process_traversal-strategy.js.html URL: http://svn.apache.org/viewvc/tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/process_traversal-strategy.js.html?rev=1846578&view=auto ============================================================================== --- tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/process_traversal-strategy.js.html (added) +++ tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/process_traversal-strategy.js.html Wed Nov 14 12:33:19 2018 @@ -0,0 +1,125 @@ +<!DOCTYPE html> +<html lang="en"> +<head> + <meta charset="utf-8"> + <title>JSDoc: Source: process/traversal-strategy.js</title> + + <script src="scripts/prettify/prettify.js"> </script> + <script src="scripts/prettify/lang-css.js"> </script> + <!--[if lt IE 9]> + <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script> + <![endif]--> + <link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css"> + <link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css"> +</head> + +<body> + +<div id="main"> + + <h1 class="page-title">Source: process/traversal-strategy.js</h1> + + + + + + + <section> + <article> + <pre class="prettyprint source linenums"><code>/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +/** + * @author Jorge Bay Gondra + */ +'use strict'; + +const utils = require('../utils'); + +class TraversalStrategies { + /** + * Creates a new instance of TraversalStrategies. + * @param {TraversalStrategies} [parent] The parent strategies from where to clone the values from. + * @constructor + */ + constructor(parent) { + if (parent) { + // Clone the strategies + this.strategies = [...parent.strategies]; + } + else { + this.strategies = []; + } + } + + /** @param {TraversalStrategy} strategy */ + addStrategy(strategy) { + this.strategies.push(strategy); + } + + /** + * @param {Traversal} traversal + * @returns {Promise} + */ + applyStrategies(traversal) { + // Apply all strategies serially + return this.strategies.reduce((promise, strategy) => { + return promise.then(() => strategy.apply(traversal)); + }, Promise.resolve()); + } +} + +/** @abstract */ +class TraversalStrategy { + /** + * @abstract + * @param {Traversal} traversal + * @returns {Promise} + */ + apply(traversal) { + + } +} + +module.exports = { + TraversalStrategies: TraversalStrategies, + TraversalStrategy: TraversalStrategy +};</code></pre> + </article> + </section> + + + + +</div> + +<nav> + <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="GraphSONReader.html">GraphSONReader</a></li><li><a href="GraphSONWriter.html">GraphSONWriter</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="P.html">P</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="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="TextP.html">TextP</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> +</nav> + +<br class="clear"> + +<footer> + Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Wed Nov 14 2018 07:31:46 GMT-0500 (EST) +</footer> + +<script> prettyPrint(); </script> +<script src="scripts/linenumber.js"> </script> +</body> +</html> Added: tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/process_traversal.js.html URL: http://svn.apache.org/viewvc/tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/process_traversal.js.html?rev=1846578&view=auto ============================================================================== --- tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/process_traversal.js.html (added) +++ tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/process_traversal.js.html Wed Nov 14 12:33:19 2018 @@ -0,0 +1,497 @@ +<!DOCTYPE html> +<html lang="en"> +<head> + <meta charset="utf-8"> + <title>JSDoc: Source: process/traversal.js</title> + + <script src="scripts/prettify/prettify.js"> </script> + <script src="scripts/prettify/lang-css.js"> </script> + <!--[if lt IE 9]> + <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script> + <![endif]--> + <link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css"> + <link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css"> +</head> + +<body> + +<div id="main"> + + <h1 class="page-title">Source: process/traversal.js</h1> + + + + + + + <section> + <article> + <pre class="prettyprint source linenums"><code>/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +/** + * @author Jorge Bay Gondra + */ +'use strict'; + +const utils = require('../utils'); +const itemDone = Object.freeze({ value: null, done: true }); + +class Traversal { + constructor(graph, traversalStrategies, bytecode) { + this.graph = graph; + this.traversalStrategies = traversalStrategies; + this.bytecode = bytecode; + /** @type {Array<Traverser>} */ + this.traversers = null; + this.sideEffects = null; + this._traversalStrategiesPromise = null; + this._traversersIteratorIndex = 0; + } + + /** @returns {Bytecode} */ + getBytecode() { + return this.bytecode; + } + + /** + * Returns an Array containing the traverser objects. + * @returns {Promise.<Array>} + */ + toList() { + return this._applyStrategies().then(() => { + const result = []; + let it; + while ((it = this._getNext()) && !it.done) { + result.push(it.value); + } + return result; + }); + }; + + /** + * Iterates all Traverser instances in the traversal. + * @returns {Promise} + */ + iterate() { + this.bytecode.addStep('none'); + return this._applyStrategies().then(() => { + let it; + while ((it = this._getNext()) && !it.done) { + } + }); + } + + /** + * Async iterator method implementation. + * Returns a promise containing an iterator item. + * @returns {Promise.<{value, done}>} + */ + next() { + return this._applyStrategies().then(() => this._getNext()); + } + + /** + * Synchronous iterator of traversers including + * @private + */ + _getNext() { + while (this.traversers && this._traversersIteratorIndex < this.traversers.length) { + let traverser = this.traversers[this._traversersIteratorIndex]; + if (traverser.bulk > 0) { + traverser.bulk--; + return { value: traverser.object, done: false }; + } + this._traversersIteratorIndex++; + } + return itemDone; + } + + _applyStrategies() { + if (this._traversalStrategiesPromise) { + // Apply strategies only once + return this._traversalStrategiesPromise; + } + return this._traversalStrategiesPromise = this.traversalStrategies.applyStrategies(this); + } + + /** + * Returns the Bytecode JSON representation of the traversal + * @returns {String} + */ + toString() { + return this.bytecode.toString(); + }; +} + + +class IO { + + static get graphml() { + return "graphml" + } + + static get graphson() { + return "graphson" + } + + static get gryo() { + return "gryo" + } + + static get reader() { + return "~tinkerpop.io.reader" + } + + static get registry() { + return "~tinkerpop.io.registry" + } + + static get writer() { + return "~tinkerpop.io.writer" + } +} + +class ConnectedComponent { + + static get component() { + return "gremlin.connectedComponentVertexProgram.component" + } + + static get edges() { + return "~tinkerpop.connectedComponent.edges" + } + + static get propertyName() { + return "~tinkerpop.connectedComponent.propertyName" + } +} + +class ShortestPath { + + static get distance() { + return "~tinkerpop.shortestPath.distance" + } + + static get edges() { + return "~tinkerpop.shortestPath.edges" + } + + static get includeEdges() { + return "~tinkerpop.shortestPath.includeEdges" + } + + static get maxDistance() { + return "~tinkerpop.shortestPath.maxDistance" + } + + static get target() { + return "~tinkerpop.shortestPath.target" + } +} + +class PageRank { + + static get edges() { + return "~tinkerpop.pageRank.edges" + } + + static get propertyName() { + return "~tinkerpop.pageRank.propertyName" + } + + static get times() { + return "~tinkerpop.pageRank.times" + } +} + +class PeerPressure { + + static get edges() { + return "~tinkerpop.peerPressure.edges" + } + + static get propertyName() { + return "~tinkerpop.peerPressure.propertyName" + } + + static get times() { + return "~tinkerpop.peerPressure.times" + } +} + + +class P { + /** + * Represents an operation. + * @constructor + */ + constructor(operator, value, other) { + this.operator = operator; + this.value = value; + this.other = other; + } + + /** + * Returns the string representation of the instance. + * @returns {string} + */ + toString() { + if (this.other === undefined) { + return this.operator + '(' + this.value + ')'; + } + return this.operator + '(' + this.value + ', ' + this.other + ')'; + } + + and(arg) { + return new P('and', this, arg); + } + + or(arg) { + return new P('or', this, arg); + } + + /** @param {...Object} args */ + static between(...args) { + return createP('between', args); + } + + /** @param {...Object} args */ + static eq(...args) { + return createP('eq', args); + } + + /** @param {...Object} args */ + static gt(...args) { + return createP('gt', args); + } + + /** @param {...Object} args */ + static gte(...args) { + return createP('gte', args); + } + + /** @param {...Object} args */ + static inside(...args) { + return createP('inside', args); + } + + /** @param {...Object} args */ + static lt(...args) { + return createP('lt', args); + } + + /** @param {...Object} args */ + static lte(...args) { + return createP('lte', args); + } + + /** @param {...Object} args */ + static neq(...args) { + return createP('neq', args); + } + + /** @param {...Object} args */ + static not(...args) { + return createP('not', args); + } + + /** @param {...Object} args */ + static outside(...args) { + return createP('outside', args); + } + + /** @param {...Object} args */ + static test(...args) { + return createP('test', args); + } + + /** @param {...Object} args */ + static within(...args) { + return createP('within', args); + } + + /** @param {...Object} args */ + static without(...args) { + return createP('without', args); + } + +} + +function createP(operator, args) { + args.unshift(null, operator); + return new (Function.prototype.bind.apply(P, args)); +} + +class TextP { + /** + * Represents an operation. + * @constructor + */ + constructor(operator, value, other) { + this.operator = operator; + this.value = value; + this.other = other; + } + + /** + * Returns the string representation of the instance. + * @returns {string} + */ + toString() { + if (this.other === undefined) { + return this.operator + '(' + this.value + ')'; + } + return this.operator + '(' + this.value + ', ' + this.other + ')'; + } + + and(arg) { + return new P('and', this, arg); + } + + or(arg) { + return new P('or', this, arg); + } + + /** @param {...Object} args */ + static containing(...args) { + return createTextP('containing', args); + } + + /** @param {...Object} args */ + static endingWith(...args) { + return createTextP('endingWith', args); + } + + /** @param {...Object} args */ + static notContaining(...args) { + return createTextP('notContaining', args); + } + + /** @param {...Object} args */ + static notEndingWith(...args) { + return createTextP('notEndingWith', args); + } + + /** @param {...Object} args */ + static notStartingWith(...args) { + return createTextP('notStartingWith', args); + } + + /** @param {...Object} args */ + static startingWith(...args) { + return createTextP('startingWith', args); + } + +} + +function createTextP(operator, args) { + args.unshift(null, operator); + return new (Function.prototype.bind.apply(TextP, args)); +} + +class Traverser { + constructor(object, bulk) { + this.object = object; + this.bulk = bulk || 1; + } +} + +class TraversalSideEffects { + +} + +const withOptions = { + tokens: "~tinkerpop.valueMap.tokens", + none: 0, + ids: 1, + labels: 2, + keys: 4, + values: 8, + all: 15 +}; + +function toEnum(typeName, keys) { + const result = {}; + keys.split(' ').forEach(k => { + let jsKey = k; + if (jsKey === jsKey.toUpperCase()) { + jsKey = jsKey.toLowerCase(); + } + result[jsKey] = new EnumValue(typeName, k); + }); + return result; +} + +class EnumValue { + constructor(typeName, elementName) { + this.typeName = typeName; + this.elementName = elementName; + } + + toString() { + return this.elementName; + } +} + +module.exports = { + EnumValue, + P, + TextP, + withOptions, + IO, + Traversal, + TraversalSideEffects, + Traverser, + barrier: toEnum('Barrier', 'normSack'), + cardinality: toEnum('Cardinality', 'list set single'), + column: toEnum('Column', 'keys values'), + direction: toEnum('Direction', 'BOTH IN OUT'), + graphSONVersion: toEnum('GraphSONVersion', 'V1_0 V2_0 V3_0'), + gryoVersion: toEnum('GryoVersion', 'V1_0 V3_0'), + operator: toEnum('Operator', 'addAll and assign div max min minus mult or sum sumLong'), + order: toEnum('Order', 'asc decr desc incr shuffle'), + pick: toEnum('Pick', 'any none'), + pop: toEnum('Pop', 'all first last mixed'), + scope: toEnum('Scope', 'global local'), + t: toEnum('T', 'id key label value') +}; +</code></pre> + </article> + </section> + + + + +</div> + +<nav> + <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="GraphSONReader.html">GraphSONReader</a></li><li><a href="GraphSONWriter.html">GraphSONWriter</a></li><li><a href="GraphTraversal.html">GraphTraversal</a></li><li><a href="GraphTraversalSource.html">GraphTraversalSource</a></li><li><a href="P.html">P</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="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="TextP.html">TextP</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> +</nav> + +<br class="clear"> + +<footer> + Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Wed Nov 14 2018 07:31:46 GMT-0500 (EST) +</footer> + +<script> prettyPrint(); </script> +<script src="scripts/linenumber.js"> </script> +</body> +</html> Added: tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/scripts/linenumber.js URL: http://svn.apache.org/viewvc/tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/scripts/linenumber.js?rev=1846578&view=auto ============================================================================== --- tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/scripts/linenumber.js (added) +++ tinkerpop/site/jsdocs/3.4.0-SNAPSHOT/scripts/linenumber.js Wed Nov 14 12:33:19 2018 @@ -0,0 +1,25 @@ +/*global document */ +(function() { + var source = document.getElementsByClassName('prettyprint source linenums'); + var i = 0; + var lineNumber = 0; + var lineId; + var lines; + var totalLines; + var anchorHash; + + if (source && source[0]) { + anchorHash = document.location.hash.substring(1); + lines = source[0].getElementsByTagName('li'); + totalLines = lines.length; + + for (; i < totalLines; i++) { + lineNumber++; + lineId = 'line' + lineNumber; + lines[i].id = lineId; + if (lineId === anchorHash) { + lines[i].className += ' selected'; + } + } + } +})();