8 type Pointer<T>: Deref<Target = T>;
9 fn new<T>(value: T) -> Self::Pointer<T>;
14 impl PointerFamily for ArcFamily {
15 type Pointer<T> = Arc<T>;
16 fn new<T>(value: T) -> Self::Pointer<T> {
23 impl PointerFamily for RcFamily {
24 type Pointer<T> = Rc<T>;
25 fn new<T>(value: T) -> Self::Pointer<T> {
30 struct Foo<P: PointerFamily> {
31 bar: P::Pointer<String>,