pub(super) enum AnyOverloadSet {
List(List),
Regular(Regular),
}Expand description
An OverloadSet that dynamically dispatches to concrete implementations.
Variants§
Trait Implementations§
Source§impl Clone for AnyOverloadSet
impl Clone for AnyOverloadSet
Source§fn clone(&self) -> AnyOverloadSet
fn clone(&self) -> AnyOverloadSet
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 From<List> for AnyOverloadSet
impl From<List> for AnyOverloadSet
Source§impl From<Regular> for AnyOverloadSet
impl From<Regular> for AnyOverloadSet
Source§impl OverloadSet for AnyOverloadSet
impl OverloadSet for AnyOverloadSet
Source§fn min_arguments(&self) -> usize
fn min_arguments(&self) -> usize
Return the smallest number of arguments in any type rule in the set. Read more
Source§fn max_arguments(&self) -> usize
fn max_arguments(&self) -> usize
Return the largest number of arguments in any type rule in the set. Read more
Source§fn arg(&self, i: usize, ty: &TypeInner, types: &UniqueArena<Type>) -> Self
fn arg(&self, i: usize, ty: &TypeInner, types: &UniqueArena<Type>) -> Self
Find the overloads that could accept a given argument. Read more
Source§fn concrete_only(self, types: &UniqueArena<Type>) -> Self
fn concrete_only(self, types: &UniqueArena<Type>) -> Self
Limit
self to overloads whose arguments are all concrete types. Read moreSource§fn most_preferred(&self) -> Rule
fn most_preferred(&self) -> Rule
Return the most preferred candidate. Read more
Source§fn overload_list(&self, gctx: &GlobalCtx<'_>) -> Vec<Rule>
fn overload_list(&self, gctx: &GlobalCtx<'_>) -> Vec<Rule>
Return a type rule for each of the overloads in
self.Source§fn allowed_args(&self, i: usize, gctx: &GlobalCtx<'_>) -> Vec<TypeResolution>
fn allowed_args(&self, i: usize, gctx: &GlobalCtx<'_>) -> Vec<TypeResolution>
Return a list of the types allowed for argument
i.Source§fn for_debug(&self, types: &UniqueArena<Type>) -> impl Debug
fn for_debug(&self, types: &UniqueArena<Type>) -> impl Debug
Return an object that can be formatted with
core::fmt::Debug.Auto Trait Implementations§
impl Freeze for AnyOverloadSet
impl RefUnwindSafe for AnyOverloadSet
impl !Send for AnyOverloadSet
impl !Sync for AnyOverloadSet
impl Unpin for AnyOverloadSet
impl UnwindSafe for AnyOverloadSet
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