Expand description
Unsafe ALTREP trampolines and installers bridging safe traits to R’s C ABI.
This module provides:
- Generic
extern "C-unwind"trampolines that call into safe trait methods - Installer functions that register methods with R based on
HAS_*consts
§Design
Trampolines are only installed when HAS_* is true. When false, the method
is NOT installed with R, so R uses its own default behavior.
Macros§
- def_
installer 🔒 - Generate a family-specific installer function from a declarative spec.
Functions§
- guarded_
altrep_ 🔒call - Dispatch an ALTREP callback through the guard mode selected by
T::GUARD. - install_
base ⚠ - Install base ALTREP methods (always installs length, conditionally installs optional).
- install_
cplx ⚠ - Install complex-specific methods.
- install_
int ⚠ - Install integer-specific methods.
- install_
lgl ⚠ - Install logical-specific methods.
- install_
list ⚠ - Install list-specific methods.
- install_
raw ⚠ - Install raw-specific methods.
- install_
real ⚠ - Install real-specific methods.
- install_
str ⚠ - Install string-specific methods.
- install_
vec ⚠ - Install vector-level methods.
- t_
coerce ⚠ - Trampoline for Coerce method.
- t_
cplx_ ⚠elt - Trampoline for complex Elt method.
- t_
cplx_ ⚠get_ region - Trampoline for complex Get_region method.
- t_
dataptr ⚠ - Trampoline for Dataptr method.
- t_
dataptr_ ⚠or_ null - Trampoline for Dataptr_or_null method.
- t_
duplicate ⚠ - Trampoline for Duplicate method.
- t_
duplicate_ ⚠ex - Trampoline for DuplicateEX method (extended duplication).
- t_
extract_ ⚠subset - Trampoline for Extract_subset method.
- t_
inspect ⚠ - Trampoline for Inspect method.
- t_
int_ ⚠elt - Trampoline for integer Elt method.
- t_
int_ ⚠get_ region - Trampoline for integer Get_region method.
- t_
int_ ⚠is_ sorted - Trampoline for integer Is_sorted method.
- t_
int_ ⚠max - Trampoline for integer Max method.
- t_
int_ ⚠min - Trampoline for integer Min method.
- t_
int_ ⚠no_ na - Trampoline for integer No_NA method.
- t_
int_ ⚠sum - Trampoline for integer Sum method.
- t_
length ⚠ - Trampoline for Length method.
- t_
lgl_ ⚠elt - Trampoline for logical Elt method.
- t_
lgl_ ⚠get_ region - Trampoline for logical Get_region method.
- t_
lgl_ ⚠is_ sorted - Trampoline for logical Is_sorted method.
- t_
lgl_ ⚠no_ na - Trampoline for logical No_NA method.
- t_
lgl_ ⚠sum - Trampoline for logical Sum method.
- t_
list_ ⚠elt - Trampoline for list Elt method (REQUIRED for ALTLIST).
- t_
list_ ⚠set_ elt - Trampoline for list Set_elt method.
- t_
raw_ ⚠elt - Trampoline for raw Elt method.
- t_
raw_ ⚠get_ region - Trampoline for raw Get_region method.
- t_
real_ ⚠elt - Trampoline for real Elt method.
- t_
real_ ⚠get_ region - Trampoline for real Get_region method.
- t_
real_ ⚠is_ sorted - Trampoline for real Is_sorted method.
- t_
real_ ⚠max - Trampoline for real Max method.
- t_
real_ ⚠min - Trampoline for real Min method.
- t_
real_ ⚠no_ na - Trampoline for real No_NA method.
- t_
real_ ⚠sum - Trampoline for real Sum method.
- t_
serialized_ ⚠state - Trampoline for Serialized_state method.
- t_
str_ ⚠elt - Trampoline for string Elt method (REQUIRED for ALTSTRING).
- t_
str_ ⚠is_ sorted - Trampoline for string Is_sorted method.
- t_
str_ ⚠no_ na - Trampoline for string No_NA method.
- t_
str_ ⚠set_ elt - Trampoline for string Set_elt method.
- t_
unserialize ⚠ - Trampoline for Unserialize method.
- t_
unserialize_ ⚠ex - Trampoline for UnserializeEX method (extended unserialization with attributes).