blob: ac8aaf2cfcb41d6071908da9f69437973a01c340 [file] [log] [blame]
'use strict'
var convert = require('unist-util-is/convert')
module.exports = findAllAfter
function findAllAfter(parent, index, test) {
var is = convert(test)
var results = []
var children
var child
var length
if (!parent || !parent.type || !parent.children) {
throw new Error('Expected parent node')
}
children = parent.children
length = children.length
if (index && index.type) {
index = children.indexOf(index)
}
if (isNaN(index) || index < 0 || index === Infinity) {
throw new Error('Expected positive finite index or child node')
}
while (++index < length) {
child = children[index]
if (is(child, index, parent)) {
results.push(child)
}
}
return results
}