($Id: Closure.h 1353 2013-03-18 16:59:38Z arr $)
Class CXXR::Closure and associated C interface.
More...
#include "CXXR/FunctionBase.h"
#include <boost/serialization/access.hpp>
#include <boost/serialization/base_object.hpp>
#include <boost/serialization/nvp.hpp>
#include <boost/serialization/split_member.hpp>
#include "CXXR/ArgMatcher.hpp"
#include "CXXR/Environment.h"
#include "CXXR/PairList.h"
Go to the source code of this file.
Namespaces |
namespace | CXXR |
| Namespace for the CXXR project.
|
Detailed Description
Class CXXR::Closure and associated C interface.
Function Documentation
Access the body of a CXXR::Closure.
- Parameters:
-
- Returns:
- Pointer to the body of x.
Access the environment of a CXXR::Closure.
- Parameters:
-
- Returns:
- Pointer to the environment of x.
Access formal arguments of a CXXR::Closure.
- Parameters:
-
- Returns:
- Pointer to the formal argument list of x.
Rboolean RDEBUG |
( |
SEXP |
x | ) |
|
|
inline |
Query debugging status.
- Parameters:
-
- Returns:
true
if debugging is set, i.e. evaluations of the function should run under the browser.
- Note:
- In CXXR, RDEBUG() is applicable only to closures; use ENV_DEBUG() to query the debugging (single-stepping) state for environments.
Create a CXXR::Closure object.
- Parameters:
-
formal_args | Pointer to a CXXR::PairList (checked) of formal arguments. |
body | Pointer to the body of the CXXR::Closure. This must be either a null pointer or a pointer to an object of one of the following types: LISTSXP, LANGSXP, SYMSXP, EXPRSXP, VECSXP or BCODESXP (checked). |
env | pointer to the CXXR::Environment (checked) in which the closure is to be evaluated. |
- Returns:
- pointer to the created closure object.
Replace the environment of a closure.
- Parameters:
-
x | Pointer to a CXXR::Closure object (checked). |
v | Pointer to the environment now to be considered as the environment of this CXXR::Closure. A null pointer is not permissible (not checked). |
void SET_RDEBUG |
( |
SEXP |
x, |
|
|
Rboolean |
v |
|
) |
| |
|
inline |