pub struct ImplFunctionType<'ctx> { /* private fields */ }Expand description
A SIL implementation function type.
This represents a function type with detailed SIL-level information including calling conventions, parameter passing conventions, and ownership.
Implementations§
Source§impl<'ctx> ImplFunctionType<'ctx>
impl<'ctx> ImplFunctionType<'ctx>
Sourcepub fn callee_convention(&self) -> Option<&'ctx str>
pub fn callee_convention(&self) -> Option<&'ctx str>
Get the callee convention (e.g., “@callee_guaranteed”, “@callee_owned”).
Sourcepub fn parameters(&self) -> Vec<ImplParam<'ctx>>
pub fn parameters(&self) -> Vec<ImplParam<'ctx>>
Get the parameters with their conventions.
Sourcepub fn results(&self) -> Vec<ImplResult<'ctx>>
pub fn results(&self) -> Vec<ImplResult<'ctx>>
Get the results with their conventions.
Sourcepub fn error_result(&self) -> Option<ImplResult<'ctx>>
pub fn error_result(&self) -> Option<ImplResult<'ctx>>
Get the error result if present.
Sourcepub fn generic_signature(&self) -> Option<GenericSignature<'ctx>>
pub fn generic_signature(&self) -> Option<GenericSignature<'ctx>>
Get the generic signature if this is a substituted function type.
Sourcepub fn substitutions(&self) -> Vec<TypeRef<'ctx>>
pub fn substitutions(&self) -> Vec<TypeRef<'ctx>>
Get the substitution types (the “for <…>” part).
Sourcepub fn is_escaping(&self) -> bool
pub fn is_escaping(&self) -> bool
Check if this function is escaping.
Sourcepub fn has_sending_result(&self) -> bool
pub fn has_sending_result(&self) -> bool
Check if this function has a sending result.
Trait Implementations§
Source§impl<'ctx> Clone for ImplFunctionType<'ctx>
impl<'ctx> Clone for ImplFunctionType<'ctx>
Source§fn clone(&self) -> ImplFunctionType<'ctx>
fn clone(&self) -> ImplFunctionType<'ctx>
Returns a duplicate 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 ImplFunctionType<'_>
impl Debug for ImplFunctionType<'_>
impl<'ctx> Copy for ImplFunctionType<'ctx>
Auto Trait Implementations§
impl<'ctx> Freeze for ImplFunctionType<'ctx>
impl<'ctx> RefUnwindSafe for ImplFunctionType<'ctx>
impl<'ctx> !Send for ImplFunctionType<'ctx>
impl<'ctx> !Sync for ImplFunctionType<'ctx>
impl<'ctx> Unpin for ImplFunctionType<'ctx>
impl<'ctx> UnsafeUnpin for ImplFunctionType<'ctx>
impl<'ctx> UnwindSafe for ImplFunctionType<'ctx>
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