pub struct FnPtr {
pub unsafety: bool,
pub abi: Abi,
pub inputs: &'static [TypeId],
pub output: TypeId,
pub variadic: bool,
pub is_splatted: bool,
pub splatted_index: u8,
}🔬This is a nightly-only experimental API. (
type_info #146922)Expand description
Function pointer, e.g. fn(u8),
Fields§
§unsafety: bool🔬This is a nightly-only experimental API. (
type_info #146922)Unsafety, true is unsafe
abi: Abi🔬This is a nightly-only experimental API. (
type_info #146922)Abi, e.g. extern “C”
inputs: &'static [TypeId]🔬This is a nightly-only experimental API. (
type_info #146922)Function inputs
output: TypeId🔬This is a nightly-only experimental API. (
type_info #146922)Function return type, default is TypeId::of::<()>
variadic: bool🔬This is a nightly-only experimental API. (
type_info #146922)Vardiadic function, e.g. extern “C” fn add(n: usize, mut args: …);
is_splatted: bool🔬This is a nightly-only experimental API. (
type_info #146922)Is any function argument splatted?
splatted_index: u8🔬This is a nightly-only experimental API. (
type_info #146922)The index of the splatted function argument in inputs, only valid if is_splatted is true.
e.g. in fn overload(a: u8, #[rustc_splat] b: (f32, usize)) the index is 1, and it can be called
as overload(a, 1.0, 2).
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl Freeze for FnPtr
impl RefUnwindSafe for FnPtr
impl Send for FnPtr
impl Sync for FnPtr
impl Unpin for FnPtr
impl UnsafeUnpin for FnPtr
impl UnwindSafe for FnPtr
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