Skip to main content

Rf_unprotect_ptr_unchecked

Function Rf_unprotect_ptr_unchecked 

Source
pub unsafe extern "C-unwind" fn Rf_unprotect_ptr_unchecked(s: SEXP)
Expand description

Remove a specific SEXP from anywhere in the protect stack.

Cost: O(k) — scans backwards from top (k = distance from top), then shifts remaining entries down. No allocation. R source comment: “should be among the top few items”.

Unlike Rf_unprotect, this is order-independent — it finds and removes the specific pointer regardless of stack position. Useful when LIFO discipline cannot be maintained, but more expensive than Rf_unprotect. Unchecked FFI binding for Rf_unprotect_ptr. Generated from source location line 2109, column 12. Generated from source file miniextendr-api/src/ffi.rs.