| 1636 | using Util = NestedSelectorUtil; |
| 1637 | |
| 1638 | explicit NestedSelector(const std::vector<std::shared_ptr<T>>& children) |
| 1639 | : parent_or_children_(&children) {} |
| 1640 | explicit NestedSelector(const T& parent) : parent_or_children_(&parent) {} |
| 1641 | explicit NestedSelector(std::shared_ptr<T> parent) |
| 1642 | : owned_parent_(std::move(parent)), parent_or_children_(owned_parent_.get()) {} |