Skip to main content

Module altrep_impl

Module altrep_impl 

Source
Expand description

ALTREP implementation utilities.

This module provides helper functions for implementing ALTREP classes. The proc-macro uses these to generate trait implementations.

Use crate::altrep_data1_as (re-exported from externalptr) to extract data from an ALTREP’s data1 slot.

MacrosΒ§

altrep_array_no_na πŸ”’
no_na fragment for families that support it (Integer, Real).
impl_altrep_array_numeric πŸ”’
Generate all ALTREP trait impls + InferBase for a numeric [T; N] array family. Pass optional extra items via extra { ... } to include in the family trait impl.
impl_builtin_altrep_family πŸ”’πŸ‘»
Generate ALTREP trait impls AND a linkme MX_ALTREP_REGISTRATIONS entry for a builtin type.
impl_register_altrep_builtin πŸ”’
Helper macro to implement RegisterAltrep for a builtin type.

StaticsΒ§

__MX_ALTREP_REG_ENTRY_builtin_Box_Rcomplex πŸ”’πŸ‘»
__MX_ALTREP_REG_ENTRY_builtin_Box_String πŸ”’πŸ‘»
__MX_ALTREP_REG_ENTRY_builtin_Box_bool πŸ”’πŸ‘»
__MX_ALTREP_REG_ENTRY_builtin_Box_f64 πŸ”’πŸ‘»
__MX_ALTREP_REG_ENTRY_builtin_Box_i32 πŸ”’πŸ‘»
__MX_ALTREP_REG_ENTRY_builtin_Box_u8 πŸ”’πŸ‘»
__MX_ALTREP_REG_ENTRY_builtin_Cow_Rcomplex πŸ”’πŸ‘»
__MX_ALTREP_REG_ENTRY_builtin_Cow_f64 πŸ”’πŸ‘»
__MX_ALTREP_REG_ENTRY_builtin_Cow_i32 πŸ”’πŸ‘»
__MX_ALTREP_REG_ENTRY_builtin_Cow_u8 πŸ”’πŸ‘»
__MX_ALTREP_REG_ENTRY_builtin_Range_f64 πŸ”’πŸ‘»
__MX_ALTREP_REG_ENTRY_builtin_Range_i32 πŸ”’πŸ‘»
__MX_ALTREP_REG_ENTRY_builtin_Range_i64 πŸ”’πŸ‘»
__MX_ALTREP_REG_ENTRY_builtin_Vec_Cow_str πŸ”’πŸ‘»
__MX_ALTREP_REG_ENTRY_builtin_Vec_Option_Cow_str πŸ”’πŸ‘»
__MX_ALTREP_REG_ENTRY_builtin_Vec_Option_String πŸ”’πŸ‘»
__MX_ALTREP_REG_ENTRY_builtin_Vec_Rcomplex πŸ”’πŸ‘»
__MX_ALTREP_REG_ENTRY_builtin_Vec_String πŸ”’πŸ‘»
__MX_ALTREP_REG_ENTRY_builtin_Vec_bool πŸ”’πŸ‘»
__MX_ALTREP_REG_ENTRY_builtin_Vec_f64 πŸ”’πŸ‘»
__MX_ALTREP_REG_ENTRY_builtin_Vec_i32 πŸ”’πŸ‘»
__MX_ALTREP_REG_ENTRY_builtin_Vec_u8 πŸ”’πŸ‘»

FunctionsΒ§

__mx_altrep_reg_builtin_Box_Rcomplex πŸ‘»
__mx_altrep_reg_builtin_Box_String πŸ‘»
__mx_altrep_reg_builtin_Box_bool πŸ‘»
__mx_altrep_reg_builtin_Box_f64 πŸ‘»
__mx_altrep_reg_builtin_Box_i32 πŸ‘»
__mx_altrep_reg_builtin_Box_u8 πŸ‘»
__mx_altrep_reg_builtin_Cow_Rcomplex πŸ‘»
__mx_altrep_reg_builtin_Cow_f64 πŸ‘»
__mx_altrep_reg_builtin_Cow_i32 πŸ‘»
__mx_altrep_reg_builtin_Cow_u8 πŸ‘»
__mx_altrep_reg_builtin_Range_f64 πŸ‘»
__mx_altrep_reg_builtin_Range_i32 πŸ‘»
__mx_altrep_reg_builtin_Range_i64 πŸ‘»
__mx_altrep_reg_builtin_Vec_Cow_str πŸ‘»
__mx_altrep_reg_builtin_Vec_Option_Cow_str πŸ‘»
__mx_altrep_reg_builtin_Vec_Option_String πŸ‘»
__mx_altrep_reg_builtin_Vec_Rcomplex πŸ‘»
__mx_altrep_reg_builtin_Vec_String πŸ‘»
__mx_altrep_reg_builtin_Vec_bool πŸ‘»
__mx_altrep_reg_builtin_Vec_f64 πŸ‘»
__mx_altrep_reg_builtin_Vec_i32 πŸ‘»
__mx_altrep_reg_builtin_Vec_u8 πŸ‘»
altrep_region_buf⚠
Create a mutable slice from an ALTREP get_region output buffer pointer.
checked_mkchar⚠
Create a CHARSXP from a Rust string, with checked length conversion.