nv-facutil-idgrp
v1.0.1
Published
nv-facutil-idgrp ======================= - simple util to keep small id-graph - to test graph-flow-control-syntax in nvlang, normally USELESS
Downloads
3
Readme
nv-facutil-idgrp
- simple util to keep small id-graph
- to test graph-flow-control-syntax in nvlang, normally USELESS
such as
#g
{
g0: {m0:<&m0>,m1:<&m1>}
g1: {m1:<&m1>,m2:<&m2>}
g2: {m1:<&m1>,m2:<&m2>,m3:<&m3>}
m0: {g0:<&g0>}
m1: {g0:<&g0>,g1:<&g1>}
m2: {g1:<&g1>,g2:<&g2>}
m3: {g2:<&g2>}
}
#edges g.store_
{
g0_m0: <data-on:g0~>m0>,
g0_m1: <data-on:g0~>m1>,
g1_m1: ...
g1_m2: ...
g2_m1: ...
g2_m2: ...
g2_m3: ...
m0_g0: ...
m1_g0: ...
m1_g1: ...
m2_g1: ...
m2_g2: ...
m3_g2: ...
}
install
- npm install nv-facutil-idgrp
usage
const x = require("nv-facutil-idgrp");
example
> x
{
SetAction: [class SetAction],
creat_local_store: [Function: creat_local_store],
creat_g: [Function: creat_g]
}
> g = x.creat_g()
G {}
> g.sync_set("g0","m0")
SetAction {
creat0: false,
creat1: false,
link: true,
updt01: false,
updt10: false,
rtrn: [ [ 'g0', 'm0', null ], [ 'm0', 'g0', null ] ],
creat_0: true,
creat_1: true
}
> g
G {
g0: <ref *1> { m0: { g0: [Circular *1] } },
m0: <ref *2> { g0: <ref *1> { m0: [Circular *2] } }
}
> g.sync_set("g0","m1")
SetAction {
creat0: false,
creat1: false,
link: true,
updt01: false,
updt10: false,
rtrn: [ [ 'g0', 'm1', null ], [ 'm1', 'g0', null ] ],
creat_1: true
}
> g
G {
g0: <ref *1> {
m0: { g0: [Circular *1] },
m1: { g0: [Circular *1] }
},
m0: <ref *2> {
g0: <ref *1> { m0: [Circular *2], m1: [Object] }
},
m1: <ref *3> {
g0: <ref *1> { m0: [Object], m1: [Circular *3] }
}
}
> g.sync_set("g1","m0")
SetAction {
creat0: false,
creat1: false,
link: true,
updt01: false,
updt10: false,
rtrn: [ [ 'g1', 'm0', null ], [ 'm0', 'g1', null ] ],
creat_0: true
}
> g
G {
g0: <ref *1> {
m0: { g0: [Circular *1], g1: [Object] },
m1: { g0: [Circular *1] }
},
m0: <ref *2> {
g0: <ref *1> { m0: [Circular *2], m1: [Object] },
g1: { m0: [Circular *2] }
},
m1: <ref *3> {
g0: <ref *1> { m0: [Object], m1: [Circular *3] }
},
g1: <ref *4> {
m0: <ref *2> { g0: [Object], g1: [Circular *4] }
}
}
METHODS
> g.
g.async_delete g.async_set g.constructor g.has g.has_pair g.store_ g.sync_delete
g.sync_set
> g.store_.
g.store_._delete g.store_._insert g.store_._update g.store_.constructor g.store_.delete_pair g.store_.get_data
g.store_.get_data_pair g.store_.insert_pair g.store_.make_key g.store_.split_key g.store_.update_pair
APIS
{
SetAction: [class SetAction],
creat_local_store: [Function: creat_local_store],
creat_g: [Function: creat_g]
}
LICENSE
- ISC