INNER CODE UNIT · JavaScript
walkBFS
sheerun/graphqlviz · index.js:188
function walkBFS (obj, iter) {
var q = _.map(_.keys(obj), k => {
return { key: k, path: '["' + k + '"]' }
})
var current
var currentNode
var retval
var push = (v, k) => {
q.push({ key: k, path: current.path + '["' + k + '"]' })
}
while (q.length) {
current = q.shift()
currentNode = _.get(obj, current.path)
retval = iter(currentNode, current.key, current.path)
if (retval) {
return retval
}