Struct hir_def::data::FunctionData
source · pub struct FunctionData {
pub name: Name,
pub params: Box<[TypeRefId]>,
pub ret_type: TypeRefId,
pub visibility: RawVisibility,
pub abi: Option<Symbol>,
pub legacy_const_generics_indices: Option<Box<Box<[u32]>>>,
pub rustc_allow_incoherent_impl: bool,
pub types_map: Arc<TypesMap>,
/* private fields */
}
Fields§
§name: Name
§params: Box<[TypeRefId]>
§ret_type: TypeRefId
§visibility: RawVisibility
§abi: Option<Symbol>
§legacy_const_generics_indices: Option<Box<Box<[u32]>>>
§rustc_allow_incoherent_impl: bool
§types_map: Arc<TypesMap>
Implementations§
source§impl FunctionData
impl FunctionData
pub fn has_body(&self) -> bool
sourcepub fn has_self_param(&self) -> bool
pub fn has_self_param(&self) -> bool
True if the first param is self
. This is relevant to decide whether this
can be called as a method.
pub fn is_default(&self) -> bool
pub fn is_const(&self) -> bool
pub fn is_async(&self) -> bool
pub fn is_unsafe(&self) -> bool
pub fn is_safe(&self) -> bool
pub fn is_varargs(&self) -> bool
Trait Implementations§
source§impl Clone for FunctionData
impl Clone for FunctionData
source§fn clone(&self) -> FunctionData
fn clone(&self) -> FunctionData
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 FunctionData
impl Debug for FunctionData
source§impl PartialEq for FunctionData
impl PartialEq for FunctionData
impl Eq for FunctionData
impl StructuralPartialEq for FunctionData
Auto Trait Implementations§
impl Freeze for FunctionData
impl RefUnwindSafe for FunctionData
impl Send for FunctionData
impl Sync for FunctionData
impl Unpin for FunctionData
impl UnwindSafe for FunctionData
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)§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
Checks if this value is equivalent to the given key. Read more
§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
Compare self to
key
and return true
if they are equal.§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more