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