New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

generic-digraph

Package Overview
Dependencies
Maintainers
1
Versions
17
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

generic-digraph

a generic directed graph implementation

latest
Source
npmnpm
Version
3.1.2
Version published
Maintainers
1
Created
Source

SYNOPSIS

NPM Package Build Status Coverage Status

js-standard-style

This is a generic directional graph implementation. It makes use of ES6 iterators for graph traversal.

USAGE

const Digraph = require('generic-digraph')

// to start with the graph is just a single vertex
var vertex = new Digraph()

// now lets add an edge named 'friend' to the vertex with the value 'alice'
vertex.set('friend', 'alice')

vertex.set(['friend', 'brother'], 'bob')
// now the graph looks like:
// [vertex]---friend--->[alice]---brother-->[bob]

//path names and vertex values can be anything
vertex.set([new Buffer('friend'), 5, true, {}, new Date()], Array())

// edges are stored in a Map
vertex.edges // Map{}

// to get an array of all of the vertices
var vertices = [...vertex]

// you can also iterate a path
vertices = [...vertex.iteratePath(['friend', 'brother'])]

// getting a vertex works like setting
var friendsBotherVertex = vertex.set(['friend', 'brother'])
friendsBotherVertex.getValue() // "bob"

// delete an edge
vertex.del('friend')
// now the vertex is empty
vertex.isEmpty()

More Examples
./examples/

API

./docs/

Notes on iterate

when decsending the graph, accumulate!
when asecending the graph, aggergate!

do you wish to not decsend futher?
then using continue, do consider

accumlate, continue, aggergate, repeat
accumlate, continue, aggergate, repeat

EXTENDING

This was module was built so that it could be easly extended.

LICENSE

MPL-2.0

Keywords

digraph

FAQs

Package last updated on 25 Jul 2019

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