Skip to main content

R_altrep_class_t

Struct R_altrep_class_t 

Source
#[repr(C)]
pub struct R_altrep_class_t { pub ptr: SEXP, }
Expand description

Opaque ALTREP class handle.

Fields§

§ptr: SEXP

Underlying class object SEXP.

Implementations§

Source§

impl R_altrep_class_t

Source

pub const fn from_sexp(ptr: SEXP) -> Self

Create from a raw SEXP pointer.

Rust equivalent of C macro R_SUBTYPE_INIT(x).

Source

pub fn as_sexp(self) -> SEXP

Get the underlying SEXP.

Rust equivalent of C macro R_SEXP(x).

Source

pub unsafe fn new_altrep(self, data1: SEXP, data2: SEXP) -> SEXP

Create a new ALTREP instance with data1 and data2 slots.

§Safety

Must be called on R’s main thread. data1 and data2 must be valid SEXPs.

Source

pub unsafe fn new_altrep_unchecked(self, data1: SEXP, data2: SEXP) -> SEXP

Create a new ALTREP instance (no thread check).

§Safety

Must be called on R’s main thread.

Source

pub unsafe fn inherits(self, x: SEXP) -> bool

Check if x is an instance of this ALTREP class.

§Safety

Must be called on R’s main thread. x must be a valid SEXP.

Source

pub unsafe fn set_length_method(self, fun: R_altrep_Length_method_t)

Set the Length method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_serialized_state_method( self, fun: R_altrep_Serialized_state_method_t, )

Set the Serialized_state method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_unserialize_method(self, fun: R_altrep_Unserialize_method_t)

Set the Unserialize method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_unserialize_ex_method( self, fun: R_altrep_UnserializeEX_method_t, )

Set the UnserializeEX method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_duplicate_method(self, fun: R_altrep_Duplicate_method_t)

Set the Duplicate method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_duplicate_ex_method(self, fun: R_altrep_DuplicateEX_method_t)

Set the DuplicateEX method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_coerce_method(self, fun: R_altrep_Coerce_method_t)

Set the Coerce method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_inspect_method(self, fun: R_altrep_Inspect_method_t)

Set the Inspect method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_dataptr_method(self, fun: R_altvec_Dataptr_method_t)

Set the Dataptr method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_dataptr_or_null_method( self, fun: R_altvec_Dataptr_or_null_method_t, )

Set the Dataptr_or_null method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_extract_subset_method( self, fun: R_altvec_Extract_subset_method_t, )

Set the Extract_subset method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_integer_elt_method(self, fun: R_altinteger_Elt_method_t)

Set the integer Elt method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_integer_get_region_method( self, fun: R_altinteger_Get_region_method_t, )

Set the integer Get_region method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_integer_is_sorted_method( self, fun: R_altinteger_Is_sorted_method_t, )

Set the integer Is_sorted method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_integer_no_na_method(self, fun: R_altinteger_No_NA_method_t)

Set the integer No_NA method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_integer_sum_method(self, fun: R_altinteger_Sum_method_t)

Set the integer Sum method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_integer_min_method(self, fun: R_altinteger_Min_method_t)

Set the integer Min method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_integer_max_method(self, fun: R_altinteger_Max_method_t)

Set the integer Max method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_real_elt_method(self, fun: R_altreal_Elt_method_t)

Set the real Elt method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_real_get_region_method( self, fun: R_altreal_Get_region_method_t, )

Set the real Get_region method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_real_is_sorted_method(self, fun: R_altreal_Is_sorted_method_t)

Set the real Is_sorted method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_real_no_na_method(self, fun: R_altreal_No_NA_method_t)

Set the real No_NA method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_real_sum_method(self, fun: R_altreal_Sum_method_t)

Set the real Sum method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_real_min_method(self, fun: R_altreal_Min_method_t)

Set the real Min method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_real_max_method(self, fun: R_altreal_Max_method_t)

Set the real Max method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_logical_elt_method(self, fun: R_altlogical_Elt_method_t)

Set the logical Elt method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_logical_get_region_method( self, fun: R_altlogical_Get_region_method_t, )

Set the logical Get_region method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_logical_is_sorted_method( self, fun: R_altlogical_Is_sorted_method_t, )

Set the logical Is_sorted method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_logical_no_na_method(self, fun: R_altlogical_No_NA_method_t)

Set the logical No_NA method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_logical_sum_method(self, fun: R_altlogical_Sum_method_t)

Set the logical Sum method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_raw_elt_method(self, fun: R_altraw_Elt_method_t)

Set the raw Elt method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_raw_get_region_method(self, fun: R_altraw_Get_region_method_t)

Set the raw Get_region method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_complex_elt_method(self, fun: R_altcomplex_Elt_method_t)

Set the complex Elt method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_complex_get_region_method( self, fun: R_altcomplex_Get_region_method_t, )

Set the complex Get_region method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_string_elt_method(self, fun: R_altstring_Elt_method_t)

Set the string Elt method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_string_set_elt_method(self, fun: R_altstring_Set_elt_method_t)

Set the string Set_elt method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_string_is_sorted_method( self, fun: R_altstring_Is_sorted_method_t, )

Set the string Is_sorted method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_string_no_na_method(self, fun: R_altstring_No_NA_method_t)

Set the string No_NA method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_list_elt_method(self, fun: R_altlist_Elt_method_t)

Set the list Elt method.

§Safety

Must be called during R initialization.

Source

pub unsafe fn set_list_set_elt_method(self, fun: R_altlist_Set_elt_method_t)

Set the list Set_elt method.

§Safety

Must be called during R initialization.

Trait Implementations§

Source§

impl Clone for R_altrep_class_t

Source§

fn clone(&self) -> R_altrep_class_t

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Copy for R_altrep_class_t

Source§

impl Send for R_altrep_class_t

Source§

impl Sync for R_altrep_class_t

Source§

impl TrivialClone for R_altrep_class_t

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> RClone for T
where T: Clone,

Source§

fn clone(&self) -> T

Create a deep copy of this value.
Source§

impl<T> RCopy for T
where T: Copy,

Source§

fn copy(&self) -> T

Create a bitwise copy of this value. Read more
Source§

fn is_copy(&self) -> bool

Check if this type implements Copy. Read more
Source§

impl<T> SizeEq<Cell<T>> for T
where T: ?Sized,

Source§

type CastFrom = CastFromWrapper

Source§

impl<T> SizeEq<ManuallyDrop<T>> for T
where T: ?Sized,

Source§

type CastFrom = CastFromWrapper

Source§

impl<T> SizeEq<MaybeUninit<T>> for T

Source§

impl<T> SizeEq<ReadOnly<T>> for T
where T: ?Sized,

Source§

type CastFrom = CastFromReadOnly

Source§

impl<T> SizeEq<T> for T
where T: ?Sized,

Source§

impl<T> SizeEq<Unalign<T>> for T

Source§

type CastFrom = CastFromWrapper

Source§

impl<T> SizeEq<UnsafeCell<T>> for T
where T: ?Sized,

Source§

type CastFrom = CastFromWrapper

Source§

impl<T> SizeEq<Wrapping<T>> for T

Source§

type CastFrom = CastFromWrapper

Source§

impl<T> SizedTypeProperties for T

Source§

#[doc(hidden)]
const SIZE: usize = _

🔬This is a nightly-only experimental API. (sized_type_properties)
Source§

#[doc(hidden)]
const ALIGN: usize = _

🔬This is a nightly-only experimental API. (sized_type_properties)
Source§

#[doc(hidden)]
const ALIGNMENT: Alignment = _

🔬This is a nightly-only experimental API. (ptr_alignment_type)
Source§

#[doc(hidden)]
const IS_ZST: bool = _

🔬This is a nightly-only experimental API. (sized_type_properties)
true if this type requires no storage. false if its size is greater than zero. Read more
Source§

#[doc(hidden)]
const LAYOUT: Layout = _

🔬This is a nightly-only experimental API. (sized_type_properties)
Source§

#[doc(hidden)]
const MAX_SLICE_LEN: usize = _

🔬This is a nightly-only experimental API. (sized_type_properties)
The largest safe length for a [Self]. Read more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> InvariantsEq<ManuallyDrop<T>> for T
where T: ?Sized,

Source§

impl<T> InvariantsEq<T> for T
where T: ?Sized,

Source§

impl<T> InvariantsEq<Unalign<T>> for T

Source§

impl<T> InvariantsEq<Wrapping<T>> for T

Source§

impl<Src, Dst, A, SV, DV, R> MutationCompatible<Src, A, SV, DV, (BecauseRead, R)> for Dst
where A: Aliasing, SV: Validity, DV: Validity, Src: Read<A, R> + ?Sized, Dst: Read<A, R> + ?Sized,

Source§

impl<Src, Dst, A, SV, DV> MutationCompatible<Src, A, SV, DV, BecauseInvariantsEq> for Dst
where A: Aliasing, SV: Validity, DV: Validity, Src: TransmuteFrom<Dst, DV, SV> + ?Sized, Dst: TransmuteFrom<Src, SV, DV> + InvariantsEq<Src> + ?Sized,

Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T> TransmuteFrom<Cell<T>, Valid, Valid> for T
where T: ?Sized,

Source§

impl<T> TransmuteFrom<ManuallyDrop<T>, Valid, Valid> for T
where T: ?Sized,

Source§

impl<T> TransmuteFrom<ReadOnly<T>, Valid, Valid> for T
where T: ?Sized,

Source§

impl<Src, Dst> TransmuteFrom<Src, Initialized, Initialized> for Dst
where Src: ?Sized, Dst: ?Sized,

Source§

impl<Src, Dst, V> TransmuteFrom<Src, V, Uninit> for Dst
where V: Validity, Src: ?Sized, Dst: ?Sized,

Source§

impl<Src, Dst> TransmuteFrom<Src, Valid, Initialized> for Dst
where Src: IntoBytes + ?Sized, Dst: ?Sized,

Source§

impl<T> TransmuteFrom<Unalign<T>, Valid, Valid> for T

Source§

impl<T> TransmuteFrom<UnsafeCell<T>, Valid, Valid> for T
where T: ?Sized,

Source§

impl<T> TransmuteFrom<Wrapping<T>, Valid, Valid> for T

Source§

impl<Src, Dst, A, SV, DV, C, R> TransmuteFromPtr<Src, A, SV, DV, C, R> for Dst
where A: Aliasing, SV: Validity, DV: Validity, C: CastExact<Src, Dst>, Dst: TransmuteFrom<Src, SV, DV> + TryTransmuteFromPtr<Src, A, SV, DV, C, R> + ?Sized, Src: ?Sized,

Source§

impl<Src, Dst, SV, DV, A, C, R> TryTransmuteFromPtr<Src, A, SV, DV, C, (BecauseMutationCompatible, R)> for Dst
where A: Aliasing, SV: Validity, DV: Validity, Src: TransmuteFrom<Dst, DV, SV> + ?Sized, Dst: MutationCompatible<Src, A, SV, DV, R> + ?Sized, C: CastExact<Src, Dst>,

Layout§

Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.

Size: 8 bytes