Make Child<> an invalid type if the child cannot be extracted
The type alias `Child<Node,...>` used to simply be `void` if the child type could not be extracted. That is rather unhelpful, as it makes it impossible to use in SFINAE. This patch changes the behavior by making it impossible to instantiate the type alias if there is no valid child.
Showing with 15 additions and 3 deletions