pub enum Saturation {
Saturated,
Partial,
}Expand description
Whether an application supplies every argument its callee takes.
A saturated application at a callee whose arity is known emits as a direct call;
everything else goes through the runtime’s $curry helper (DEC-18 decision
3).
An Apply node supplies one argument, so this is a property of a
node within the application spine and not of the spine as a whole: f a b at a
two-parameter f is Partial on the inner node and
Saturated on the outer one.
Variants§
Saturated
This node supplies the last of the arguments the callee takes.
Partial
It does not — either because arguments are still missing, because the spine has already run past the callee’s arity, or because the callee has no arity at all. A callee that is a parameter, or any other expression that is not a name, is a value rather than a declaration and has no arity.
Trait Implementations§
Source§impl Clone for Saturation
impl Clone for Saturation
Source§fn clone(&self) -> Saturation
fn clone(&self) -> Saturation
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for Saturation
Source§impl Debug for Saturation
impl Debug for Saturation
impl Eq for Saturation
Source§impl PartialEq for Saturation
impl PartialEq for Saturation
impl StructuralPartialEq for Saturation
Auto Trait Implementations§
impl Freeze for Saturation
impl RefUnwindSafe for Saturation
impl Send for Saturation
impl Sync for Saturation
impl Unpin for Saturation
impl UnsafeUnpin for Saturation
impl UnwindSafe for Saturation
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.