1 #![feature(generic_associated_types)]
9 pub trait HasChildrenOf {
13 fn ref_children<'a>(&'a self) -> Vec<Self::TRef<'a>>;
14 fn take_children(self) -> Vec<Self::T>;
17 impl<Left, Right> HasChildrenOf for Either<Left, Right>
22 type T = Either<Left::T, Right::T>;
24 //~^ the associated type
25 //~^^ the associated type
27 <Left as HasChildrenOf>::T: 'a,
28 <Right as HasChildrenOf>::T: 'a
29 = Either<&'a Left::T, &'a Right::T>;
31 fn ref_children<'a>(&'a self) -> Vec<Self::TRef<'a>> {
35 fn take_children(self) -> Vec<Self::T> {