CXXR (C++ R) API
|
C interface of class PairList. More...
#include "CXXR/ConsCell.h"
Go to the source code of this file.
Functions | |
unsigned char | ARGUSED (SEXP x) |
void | SET_ARGUSED (SEXP x, unsigned char v) |
Rboolean | BINDING_IS_LOCKED (SEXP b) |
Is a Binding locked? | |
SEXP | CDR (SEXP e) |
Get tail of CXXR::ConsCell. | |
SEXP | CDAR (SEXP e) |
Equivalent to CDR(CAR(e)). | |
SEXP | CADR (SEXP e) |
Equivalent to CAR(CDR(e)). | |
SEXP | CDDR (SEXP e) |
Equivalent to CDR(CDR(e)). | |
SEXP | CADDR (SEXP e) |
Equivalent to CAR(CDR(CDR(e))). | |
SEXP | CADDDR (SEXP e) |
Equivalent to CAR(CDR(CDR(CDR(e)))). | |
SEXP | CAD4R (SEXP e) |
Equivalent to CAR(CDR(CDR(CDR(CDR(e))))). | |
Rboolean | IS_ACTIVE_BINDING (SEXP b) |
Is a Binding active? | |
void | LOCK_BINDING (SEXP b) |
Lock the binding represented by a PairList object. | |
void | SET_ACTIVE_BINDING_BIT (SEXP b) |
Designate as active the binding represented by a PairList object. | |
SEXP | SETCDR (SEXP x, SEXP y) |
Replace the tail of a CXXR::ConsCell. | |
SEXP | SETCADR (SEXP x, SEXP y) |
Set the 'car' value of the second element of list. | |
SEXP | SETCADDR (SEXP x, SEXP y) |
Set the 'car' value of the third element of list. | |
SEXP | SETCADDDR (SEXP x, SEXP y) |
Set the 'car' value of the fourth element of list. | |
SEXP | SETCAD4R (SEXP x, SEXP y) |
Set the 'car' value of the fifth element of list. | |
void | UNLOCK_BINDING (SEXP b) |
Unlock the binding represented by a PairList object. | |
SEXP | Rf_allocList (unsigned int n) |
Create a CXXR::PairList of a specified length. | |
SEXP | Rf_cons (SEXP cr, SEXP tl) |
Creates a CXXR::PairList with a specified car and tail. |
C interface of class PairList.
To facilitate inlining of various ConsCell member functions, the definition of class CXXR::PairList itself is in ConsCell.h.
This file includes C functions for examining and setting the CDR of a CXXR::ConsCell, and other operations accessing the tail of the list; functions for examining and setting the CAR and TAG of a CXXR:ConsCell are to be found in ConsCell.h.
|
inline |
Is a Binding locked?
b | Pointer to a PairList object (checked) representing a Frame::Binding (e.g. because it was produced using Frame::asPairList() ). |
Get tail of CXXR::ConsCell.
e | Pointer to a CXXR::ConsCell (checked), or a null pointer. |
Rboolean IS_ACTIVE_BINDING | ( | SEXP | b | ) |
Is a Binding active?
b | Pointer to a ConsCell object (checked). If b points to any type of ConsCell other than a PairList, the function returns FALSE. Otherwise b should point to a PairList object representing a Frame::Binding (e.g. because it was produced using Frame::asPairList() ). |
|
inline |
Lock the binding represented by a PairList object.
b | Pointer to a PairList object (checked) representing a Frame::Binding (e.g. because it was produced using Frame::asPairList() ). |
SEXP Rf_allocList | ( | unsigned int | n | ) |
Create a CXXR::PairList of a specified length.
This constructor creates a CXXR::PairList with a specified number of elements. On creation, each element has null 'car' and 'tag'.
n | Number of elements required in the list. |
Creates a CXXR::PairList with a specified car and tail.
This function protects its arguments from the garbage collector.
cr | Pointer to the 'car' of the element to be created. |
tl | Pointer to the 'tail' of the element to be created, which must be of a CXXR::PairList type (checked). |
|
inline |
Designate as active the binding represented by a PairList object.
b | Pointer to a PairList object (checked) representing a Frame::Binding (e.g. because it was produced using Frame::asPairList() ). |
Set the 'car' value of the fifth element of list.
x | Pointer to a CXXR::ConsCell with at least four successors (checked). |
y | Pointer a CXXR::RObject representing the new value of the fifth element of the list. |
Set the 'car' value of the fourth element of list.
x | Pointer to a CXXR::ConsCell with at least three successors (checked). |
y | Pointer a CXXR::RObject representing the new value of the fourth element of the list. |
Set the 'car' value of the third element of list.
x | Pointer to a CXXR::ConsCell with at least two successors (checked). |
y | Pointer a CXXR::RObject representing the new value of the third element of the list. |
Set the 'car' value of the second element of list.
x | Pointer to a CXXR::ConsCell with at least one successor (checked). |
y | Pointer a CXXR::RObject representing the new value of the second element of the list. |
Replace the tail of a CXXR::ConsCell.
x | Pointer to a CXXR::ConsCell (checked). |
y | Pointer a CXXR::RObject representing the new tail of the list. |
|
inline |
Unlock the binding represented by a PairList object.
b | Pointer to a PairList object (checked) representing a Frame::Binding (e.g. because it was produced using Frame::asPairList() ). |