Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

gremlin-script

Package Overview
Dependencies
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

gremlin-script

Generate Gremlin scripts with ease

  • 1.1.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
2
decreased by-75%
Maintainers
1
Weekly downloads
 
Created
Source

gremlin-script

Generate Gremlin scripts with ease.

Works in Node.js and the browser.

Installation

Node.js

$ npm install gremlin-script -S

Browsers

This module works as a CommonJS, AMD module or standalone module (exported globally as GremlinScript).

API

Instantiate a script object:

var GremlinScript = require('gremlin-script').GremlinScript;
var gremlin = new GremlinScript();

Get a reference to the graph:

var Graph = require('gremlin-script').Structure.Graph;
var g = new Graph('g'); // pass graph identifier/name to the constructor

gremlin.line(String|Helper[, ...parameters])

Adding a raw String line
var gremlin = new GremlinScript();

gremlin.line('g.v(1)');
gremlin.script.should.equal('g.v(1)\n');
Adding a raw String line with a bound parameter (printf style)
var gremlin = new GremlinScript();

gremlin.line('g.v(%s)', 1);
gremlin.script.should.equal('g.v(p0)\n');
gremlin.params.p0.should.equal(1);
Adding a raw String line with multiple parameters (printf style)
var gremlin = new GremlinScript();

gremlin.line('g.V(%s, %s)', 'name', 'Alice');
gremlin.script.should.equal('g.V(p0, p1)\n');
gremlin.params.p0.should.equal('name');
gremlin.params.p1.should.equal('Alice');
Adding a line with Graph and Element (Vertex/Edge) helpers
var gremlin = new GremlinScript();
var g = new Graph('g');

gremlin.line(g.v(1));
gremlin.script.should.equal('g.v(1)\n');
Bound parameters when using helpers

Using the bindParameter() function flags the argument passed to a function as a BoundParameter. When generating the string, Gremlin-Script will automatically replace such wrapped argument with an automatically generated variable name and push the argument to the gremlin.params Array.

var bind = require('gremlin-script').bindParameter;

var gremlin = new GremlinScript();
var g = new Graph('g');

var v1 = gremlin.var(g.addVertex(bind({ name: 'Alice' })), 'v1');
var v2 = gremlin.var(g.addVertex(bind({ name: 'Bob' })), 'v2');
gremlin.line(g.addEdge(v1, v2, 'knows', bind({ foo: 'bar' })));

gremlin.script.should.equal("v1=g.addVertex(p0)\nv2=g.addVertex(p1)\ng.addEdge(v1,v2,'knows',p2)\n");
gremlin.params.p0.name.should.equal('Alice');
gremlin.params.p1.name.should.equal('Bob');
gremlin.params.p2.foo.should.equal('bar');

Author

Jean-Baptiste Musso - @jbmusso.

This library was heavily inspired by the great work started by Frank Panetta on gRex. Thanks!

Contributors

https://github.com/gulthor/gremlin-script/graphs/contributors

License

MIT (c) 2014 Jean-Baptiste Musso

Keywords

FAQs

Package last updated on 20 Dec 2014

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc