pub enum NameChoice {
Naive,
Eager,
Structural,
Nominal(Name),
}
Expand description
A NameChoice
chooses between Native
, Structural
and
Nominal
identities for articulation points introduced by
thunk
.
Variants§
Naive
Naive: Native Rust thunk, with no caching/reuse of the thunk representation, or its result.
Eager
Eager: Special case of Naive
, with no suspension of the thunk – the function is called immediately.
Structural
Structurally identify an Art
based on hashing its content (e.g., prog_pt
and argument(s)).
Nominal(Name)
Explicitly names an Art
based on a programmer-chosen name, of type Name
.
Trait Implementations§
Source§impl Clone for NameChoice
impl Clone for NameChoice
Source§fn clone(&self) -> NameChoice
fn clone(&self) -> NameChoice
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for NameChoice
impl Debug for NameChoice
Source§impl Hash for NameChoice
impl Hash for NameChoice
Source§impl PartialEq for NameChoice
impl PartialEq for NameChoice
impl Eq for NameChoice
impl StructuralPartialEq for NameChoice
Auto Trait Implementations§
impl Freeze for NameChoice
impl RefUnwindSafe for NameChoice
impl !Send for NameChoice
impl !Sync for NameChoice
impl Unpin for NameChoice
impl UnwindSafe for NameChoice
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more