Skip to main content

sidecar_r_get

Function sidecar_r_get 

Source
#[doc(hidden)]
pub unsafe fn sidecar_r_get<T: TypedExternal>( x: SEXP, index: usize, require_live: bool, ) -> SEXP
Expand description

Reads T’s Sidecar field index from the external pointer x carries (sidecar_receiver).

Called by the R getters #[derive(ExternalPtr)] generates. A live struct’s pending value for the field is flushed into the slot first; a pointer without an address (after readRDS()) reads its protection list as is, unless require_live refuses it (checked_prot).

§Panics

When x carries no external pointer to a T, or with the miniextendr_borrow_conflict R error while a running call holds the value mutably.

§Safety

Must be called from R’s main thread with a valid x.