collections/Tree.js
/**
		 * Searches the children nodes for the first child node that matches the
		 * predicate.
		 *
		 * @public
		 * @param {Tree~nodePredicate} predicate - A predicate that tests each child node. The predicate takes two arguments -- the node's value, and the node itself.
		 * @returns {Tree|null}
		 */
Searches the children nodes for the first child node that matches the
predicate.

@public
@param {Tree~nodePredicate} predicate - A predicate that tests each child node. The predicate takes two arguments -- the node's value, and the node itself.
@returns {Tree|null}
Searches the children nodes for the first child node that matches the predicate . @public @param { Tree~nodePredicate } predicate - A predicate that tests each child node . The predicate takes two arguments -- the node ' s value and the node itself . @returns { Tree|null }
findChild(predicate) {
			let returnRef = null;
			for (let i = 0; i < this._children.length; i++) {
				let child = this._children[i];
				if (predicate(child.getValue(), child)) {
					returnRef = child;
					break;
				}
			}
			return returnRef;
		}
findChild ( predicate ) { let returnRef = null ; for ( let i = 0 ; i < this . _children . length ; i ++ ) { let child = this . _children [ i ] ; if ( predicate ( child . getValue ( ) , child ) ) { returnRef = child ; break ; } } return returnRef ; }
Searches the children nodes for the first child node that matches the
 predicate.
Searches the children nodes for the first child node that matches the predicate .