CXXR (C++ R)
|
Class CXXR::ExternalPointer and associated C interface. More...
#include "CXXR/ExternalPointer.h"
#include "localization.h"
#include "CXXR/GCStackRoot.hpp"
#include "CXXR/PairList.h"
Namespaces | |
namespace | CXXR |
Namespace for the CXXR project. |
Functions | |
SEXP | R_MakeExternalPtr (void *p, SEXP tag, SEXP prot) |
Create a CXXR::ExternalPointer object. | |
void | R_SetExternalPtrAddr (SEXP s, void *p) |
Set the value of the encapsulated pointer. | |
void | R_SetExternalPtrTag (SEXP s, SEXP tag) |
Designate the tag object. | |
void | R_SetExternalPtrProtected (SEXP s, SEXP p) |
Designate the protege object. |
Variables | |
void *(* | CXXR::ForceNonInline::R_ExternalPtrAddrp )(SEXP) = R_ExternalPtrAddr |
RObject *(* | CXXR::ForceNonInline::R_ExternalPtrTagp )(SEXP) = R_ExternalPtrTag |
RObject *(* | CXXR::ForceNonInline::R_ExternalPtrProtectedp )(SEXP) = R_ExternalPtrProtected |
void(* | CXXR::ForceNonInline::R_ClearExternalPtrp )(SEXP) = R_ClearExternalPtr |
Class CXXR::ExternalPointer and associated C interface.
Create a CXXR::ExternalPointer object.
p | The pointer that the CXXR::ExternalPointer object is to encapsulate. |
tag | Pointer to the tag object. May be null (and often is). |
prot | Pointer to the protege object. May be null (and often is). |
void R_SetExternalPtrAddr | ( | SEXP | s, |
void * | p | ||
) |
Set the value of the encapsulated pointer.
s | Pointer to a CXXR::ExternalPointer (checked). |
p | New pointer value (may be null). |
Designate the protege object.
s | Pointer to a CXXR::ExternalPointer (checked). |
p | Pointer to the new protege object (or a null pointer). |
Designate the tag object.
s | Pointer to a CXXR::ExternalPointer (checked). |
tag | Pointer to the new tag object (or a null pointer). |