pub trait ProposeExtensionMethod<G: Scope, P: ExchangeData + Ord, R: Monoid + Multiply<Output = R>> {
// Required methods
fn propose_using<PE: PrefixExtender<G, R, Prefix = P>>(
&self,
extender: &mut PE,
) -> Collection<G, (P, PE::Extension), R>;
fn extend<E: ExchangeData + Ord>(
&self,
extenders: &mut [&mut dyn PrefixExtender<G, R, Prefix = P, Extension = E>],
) -> Collection<G, (P, E), R>;
}
Required Methods§
fn propose_using<PE: PrefixExtender<G, R, Prefix = P>>( &self, extender: &mut PE, ) -> Collection<G, (P, PE::Extension), R>
fn extend<E: ExchangeData + Ord>( &self, extenders: &mut [&mut dyn PrefixExtender<G, R, Prefix = P, Extension = E>], ) -> Collection<G, (P, E), R>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.