Skip to content

klyngbaek/datatree

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

datatree

An easy way to store/retrieve/manipulate data associated with a path.

/* flow-include type DataTreeList = {[key: string]: any} */
/* flow-include type DataTreeJS = {data?: any, children: {[key: string]: DataTreeJS}} */

// require datatree module
var DataTree = require('datatree');

// static variables
DataTree.concat(thisData/*: Array?<any>*/, thatData/*: Array?<any>*/, keys/*: Array<string>*/)/*: Array<any>*/

// static methods
DataTree.fromJS(inputJS/*: JS*/)/*: DataTree*/
DataTree.fromList(list/*: List*/)/*: DataTree*/

// create DataTree instance
var dataTree = new DataTree();

// prototype methods
dataTree.getDataIn(keys/*: Array<string>*/)
dataTree.setData(data)/*: void*/
dataTree.setDataIn(keys/*: Array<string>*/, data/*: any*/)/*: void*/
dataTree.deleteData()/*: void*/
dataTree.deleteDataIn(keys/*: Array<string>*/)/*: void*/
dataTree.hasData()/*: boolean*/
dataTree.hasDataIn(keys/*: Array<string>*/)/*: boolean*/
dataTree.getChildren()/*: void*/
dataTree.getChildrenIn(keys/*: Array<string>*/)/*: void*/
dataTree.hasChildren()/*: boolean*/
dataTree.hasChildrenIn(keys/*: Array<string>*/)/*: boolean*/
dataTree.merge(thatDataTree/*: DataTree*/, mergeFunc/*: function*/)/*: void*/
dataTree.mergeIn(keys/*: Array<string>*/, thatDataTree/*: DataTree*/, mergeFunc/*: function*/)/*: void*/
dataTree.hasChild(childName/*: string*/)/*: boolean*/
dataTree.hasChildIn(keys/*: Array<string>*/)/*: boolean*/
dataTree.getChild(childName/*: string*/)/*: ?DataTree*/
dataTree.getChildIn(keys/*: Array<string>*/)/*: ?DataTree*/
dataTree.setChild(childName/*: string*/, childDataTree/*: DataTree*/)/*: void*/
dataTree.setChildIn(keys/*: Array<string>*/, childDataTree/*: DataTree*/)/*: void*/
dataTree.createChild(childName/*: string*/)/*: void*/
dataTree.createChildIn(keys/*: Array<string>*/)/*: void*/
dataTree.deleteChild(childName/*: string*/)/*: void*/
dataTree.deleteChildIn(keys/*: Array<string>*/)/*: void*/
dataTree.toList()/*: List*/
dataTree.toJS()/*: JS*/

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published