Append the given children as children of this node.
Source
void addChildren(Iterable<SemanticsNode> children) { _newChildren ??= <SemanticsNode>[]; _newChildren.addAll(children); // we do the asserts afterwards because children is an Iterable // and doing the asserts before would mean the behavior is // different in checked mode vs release mode (if you walk an // iterator after having reached the end, it'll just start over; // the values are not cached). assert(!_newChildren.any((SemanticsNode child) => child == this)); assert(() { SemanticsNode ancestor = this; while (ancestor.parent is SemanticsNode) ancestor = ancestor.parent; assert(!_newChildren.any((SemanticsNode child) => child == ancestor)); return true; }); assert(() { Set<SemanticsNode> seenChildren = new Set<SemanticsNode>(); for (SemanticsNode child in _newChildren) assert(seenChildren.add(child)); // check for duplicate adds return true; }); }