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

hypercore-dag

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

hypercore-dag

DAGs on top of hypercore, allowing verified random-access to graph nodes

latest
Source
npmnpm
Version
0.0.0
Version published
Maintainers
1
Created
Source

hypercore-dag

DAGs on top of hypercore, allowing verified random-access to graph nodes

Usage

'use strict'

var assert = require('assert')

var hypercore = require('hypercore')
var memdb = require('memdb')
var hypercoreDag = require('.')

var core = hypercore(memdb())
var dag = hypercoreDag(core.createFeed())

// We're building the following graph (Time on x axis, depth on y axis)
// 0     2
// \- 1  \
//    \--\-- 3

dag.add(null, 'Root', function (err, ref0) {
  assert.ifError(err)

  dag.add(ref0, 'Child 1', function (err, ref1) {
    assert.ifError(err)

    dag.add(null, 'Another root', function (err, ref2) {
      assert.ifError(err)

      dag.add([ref0, ref1, ref2], 'Tie them', function (err, ref3) {
        assert.ifError(err)

        dag.get(ref3, function (err, node) {
          assert.ifError(err)

          assert.deepEqual(node.links, [0, 1, 2])
          assert.equal(node.depth, 2)
          assert.equal(node.value, 'Tie them')
        })
      })
    })
  })
})

API

hypercoreDag(feed, [opts])

opts being {lock: mutexify()}

dag.get(index, callback)

dag.createReadStream([opts])

Extras

require('hypercore-dag/bfs-stream')(startIndex, [opts])

Preform a Breadth-first search from startIndex

require('hypercore-dag/dfs-stream')(startIndex, [opts])

Preform a Depth-first search from startIndex

Install

npm install hypercore-dag

License

ISC

Keywords

hypercore

FAQs

Package last updated on 11 Oct 2016

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