All Projects → nervgh → recursive-iterator

nervgh / recursive-iterator

Licence: MIT license
It iterates through a graph recursively

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to recursive-iterator

Traverser
Traverser is a Java library that helps software engineers implement advanced iteration of a data structure.
Stars: ✭ 45 (-48.28%)
Mutual labels:  traversal, recursion
react-binary-tree
Binary Tree Traversal Visualisation
Stars: ✭ 25 (-71.26%)
Mutual labels:  traversal, recursion
infinistack
Infinite recursion in JS without stack overflow errors, based on magic 🎩✨🐇
Stars: ✭ 24 (-72.41%)
Mutual labels:  recursion
alchemy
Generate any a-by-( b + c ) finite rectangle SVG containing potentially Infinitely many a-by-( 2 * b ) finite rectangles animated along a number line of ( ( c - b ) / a )^n scale symmetry.
Stars: ✭ 29 (-66.67%)
Mutual labels:  recursion
vim-rzip
Extends zip.vim to browse and write nested zip files
Stars: ✭ 22 (-74.71%)
Mutual labels:  recursion
language-benchmarks
A simple benchmark system for compiled and interpreted languages.
Stars: ✭ 21 (-75.86%)
Mutual labels:  recursion
Recursive-Tile-Map-Growth
Tile based level growth algorithm used in Procedural Dungeon Toolkit
Stars: ✭ 40 (-54.02%)
Mutual labels:  recursion
Dynamic-Programming-Questions-by-Aditya-Verma
Aditya Verma (Youtube) DP Playlist Codes/Solutions.
Stars: ✭ 148 (+70.11%)
Mutual labels:  recursion
Dynamic-Parkour-System
Dynamic Parkour System is a FREE plugin for Unity that allows anyone to import any model and have an already working controller with parkour capabilities like in Assassin's Creed games.
Stars: ✭ 694 (+697.7%)
Mutual labels:  traversal
react-folder-tree
A versatile react treeview library that supports custom icons and event handlers
Stars: ✭ 56 (-35.63%)
Mutual labels:  recursion
discrete-math-python-scripts
Python code snippets from Discrete Mathematics for Computer Science specialization at Coursera
Stars: ✭ 98 (+12.64%)
Mutual labels:  recursion
loadkit
Java 资源加载器,充分拓展ClassLoader#getResources(name)的能力,实现递归加载,支持普通风格 / 包名风格 / ANT风格 / 正则风格路径的资源加载同时支持自定义过滤器,通常作为框架的基础类库。
Stars: ✭ 39 (-55.17%)
Mutual labels:  recursion
Fatou.jl
Fatou sets in Julia (Fractals, Newton basins, Mandelbrot)
Stars: ✭ 92 (+5.75%)
Mutual labels:  recursion
ftor
ftor enables ML-like type-directed, functional programming with Javascript including reasonable debugging.
Stars: ✭ 44 (-49.43%)
Mutual labels:  recursion
Data-Structures-Algorithms-Handbook
A series of important questions with solutions to crack the coding interview and ace it!
Stars: ✭ 30 (-65.52%)
Mutual labels:  recursion
interview-refresh-java-bigdata
a one-stop repo to lookup for code snippets of core java concepts, sql, data structures as well as big data. It also consists of interview questions asked in real-life.
Stars: ✭ 25 (-71.26%)
Mutual labels:  recursion
javascript-easy-object
Now easily access or modify an object in javascript with javascript-easy-object.
Stars: ✭ 13 (-85.06%)
Mutual labels:  traversal
RecursiveExtractor
RecursiveExtractor is a .NET Standard 2.0 archive extraction Library, and Command Line Tool which can process 7zip, ar, bzip2, deb, gzip, iso, rar, tar, vhd, vhdx, vmdk, wim, xzip, and zip archives and any nested combination of the supported formats.
Stars: ✭ 109 (+25.29%)
Mutual labels:  recursion
TextFieldsTraversalController
A controller to manage the traversal of a collection of textfields.
Stars: ✭ 15 (-82.76%)
Mutual labels:  traversal
rrapply
rrapply: revisiting base-R's rapply
Stars: ✭ 25 (-71.26%)
Mutual labels:  recursion

Recursive Iterator

NPM version Build status Test coverage

About

It iterates through a graph or a tree recursively.

Versions

  • for support ES5 see 2.x.x versions

Getting started

Quick overview (es6)

let iterator = new RecursiveIterator(
  root /* {Object|Array} */,
  [bypassMode = 0] /* {Number} */,
  [ignoreCircular = false] /* {Boolean} */,
  [maxDeep = 100] /* {Number} */
)

let {value, done} = iterator.next()
let {parent, node, key, path, deep} = value

// parent is parent node
// node is current node
// key is key of node
// path is path to node
// deep is current deep

Example (es6)

let root = {
  object: {
    number: 1
  },
  string: 'foo'
}

for (let {node, path} of new RecursiveIterator(root)) {
  console.log(path.join('.'), node)
}

// object    Object {number: 1}
// object.number    1
// string    foo

Roadmap

Package managers

Bower

bower install recursive-iterator

You could find this module in bower like recursive iterator.

NPM

npm install recursive-iterator

You could find this module in npm like recursive iterator.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].