36 lines
695 B
Rust
36 lines
695 B
Rust
|
//@ no-prefer-dynamic
|
||
|
//@ compile-flags: --crate-type=rlib
|
||
|
|
||
|
pub use impl_mod::TraitImplementer as Implementer;
|
||
|
|
||
|
pub use trait_mod::get_assoc;
|
||
|
|
||
|
mod impl_mod {
|
||
|
use crate::trait_mod::TraitWithAssocType;
|
||
|
|
||
|
pub struct TraitImplementer {}
|
||
|
pub struct AssociatedType {}
|
||
|
|
||
|
impl AssociatedType {
|
||
|
pub fn method_on_assoc(&self) -> i32 {
|
||
|
todo!()
|
||
|
}
|
||
|
}
|
||
|
|
||
|
impl TraitWithAssocType for TraitImplementer {
|
||
|
type AssocType = AssociatedType;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
mod trait_mod {
|
||
|
use crate::Implementer;
|
||
|
|
||
|
pub fn get_assoc() -> <Implementer as TraitWithAssocType>::AssocType {
|
||
|
todo!()
|
||
|
}
|
||
|
|
||
|
pub trait TraitWithAssocType {
|
||
|
type AssocType;
|
||
|
}
|
||
|
}
|