pub trait DataKey:
Clone
+ Debug
+ Default
+ PartialEq
+ Eq
+ 'static {
// Required methods
fn make_id(&self, parent: &Id) -> Id;
fn reconstruct_key(parent: &Id, child: &Id) -> Option<Self>;
}Expand description
Bounds on the key type
This type should be small, easy to copy, and without internal mutability.
Required Methods§
Sourcefn make_id(&self, parent: &Id) -> Id
fn make_id(&self, parent: &Id) -> Id
Make an Id for a key
The result must be distinct from parent and a descendant of parent
(use Id::make_child for this, optionally more than once).
Sourcefn reconstruct_key(parent: &Id, child: &Id) -> Option<Self>
fn reconstruct_key(parent: &Id, child: &Id) -> Option<Self>
Reconstruct a key from an Id
Where child is the output of Self::make_id for the same parent
or any Id descended from that, this should return a copy of
the key passed to make_id.
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.