CXXR (C++ R) API
Classes | Namespaces | Functions | Variables
Symbol.h File Reference

($Id: Symbol.h 1390 2013-06-11 14:41:41Z arr $)

Class CXXR::Symbol and associated C interface. More...

#include "CXXR/RObject.h"
#include "CXXR/GCRoot.h"
#include "CXXR/SEXP_downcast.hpp"
#include "CXXR/String.h"
Include dependency graph for Symbol.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  CXXR::Symbol
 Class used to represent R symbols. More...
class  CXXR::Symbol::const_iterator
 const_iterator for iterating over all standard Symbols. More...

Namespaces

namespace  CXXR
 Namespace for the CXXR project.

Functions

bool CXXR::isDotSymbol (const Symbol *symbol)
 Does Symbol's name start with '.'?
bool CXXR::isDotDotSymbol (const Symbol *symbol)
 Does Symbol's name start with '..'?
Rboolean DDVAL (SEXP x)
 Does symbol relate to a ... expression?
SEXP Rf_ddfindVar (SEXP symbol, SEXP rho)
SEXP Rf_install (const char *name)
 Get a pointer to a regular Symbol object.
Rboolean Rf_isSymbol (SEXP s)
 Test if SYMSXP.
SEXP PRINTNAME (SEXP x)
 Symbol name.

Variables

Symbol *const CXXR::Bracket2Symbol
Symbol *const CXXR::BracketSymbol
Symbol *const CXXR::BraceSymbol
Symbol *const CXXR::ClassSymbol
Symbol *const CXXR::ConnIdSymbol
Symbol *const CXXR::DimNamesSymbol
Symbol *const CXXR::DimSymbol
Symbol *const CXXR::DollarSymbol
Symbol *const CXXR::DotClassSymbol
Symbol *const CXXR::DotDeviceSymbol
Symbol *const CXXR::DotDevicesSymbol
Symbol *const CXXR::DotGenericSymbol
Symbol *const CXXR::DotGenericCallEnvSymbol
Symbol *const CXXR::DotGenericDefEnvSymbol
Symbol *const CXXR::DotGroupSymbol
Symbol *const CXXR::DotMethodSymbol
Symbol *const CXXR::DotMethodsSymbol
Symbol *const CXXR::DotdefinedSymbol
Symbol *const CXXR::DotsSymbol
Symbol *const CXXR::DottargetSymbol
Symbol *const CXXR::DoubleColonSymbol
Symbol *const CXXR::DropSymbol
Symbol *const CXXR::ExactSymbol
Symbol *const CXXR::LastvalueSymbol
Symbol *const CXXR::LevelsSymbol
Symbol *const CXXR::ModeSymbol
Symbol *const CXXR::NameSymbol
Symbol *const CXXR::NamesSymbol
Symbol *const CXXR::NaRmSymbol
Symbol *const CXXR::PackageSymbol
Symbol *const CXXR::PreviousSymbol
Symbol *const CXXR::QuoteSymbol
Symbol *const CXXR::RowNamesSymbol
Symbol *const CXXR::S3MethodsTableSymbol
Symbol *const CXXR::SeedsSymbol
Symbol *const CXXR::TripleColonSymbol
Symbol *const CXXR::TspSymbol
Symbol *const CXXR::CommentSymbol
Symbol *const CXXR::SourceSymbol
Symbol *const CXXR::DotEnvSymbol
Symbol *const CXXR::RecursiveSymbol
Symbol *const CXXR::SrcfileSymbol
Symbol *const CXXR::SrcrefSymbol
Symbol *const CXXR::WholeSrcrefSymbol
Symbol *const CXXR::TmpvalSymbol
Symbol *const CXXR::UseNamesSymbol
SEXP R_MissingArg
SEXP R_UnboundValue
SEXP R_Bracket2Symbol
SEXP R_BracketSymbol
SEXP R_BraceSymbol
SEXP R_ClassSymbol
SEXP R_ConnIdSymbol
SEXP R_DeviceSymbol
SEXP R_DevicesSymbol
SEXP R_DimNamesSymbol
SEXP R_DimSymbol
SEXP R_DollarSymbol
SEXP R_DotsSymbol
SEXP R_DoubleColonSymbol
SEXP R_DropSymbol
SEXP R_LastvalueSymbol
SEXP R_LevelsSymbol
SEXP R_ModeSymbol
SEXP R_NameSymbol
SEXP R_NamesSymbol
SEXP R_NaRmSymbol
SEXP R_PackageSymbol
SEXP R_QuoteSymbol
SEXP R_RowNamesSymbol
SEXP R_SeedsSymbol
SEXP R_SourceSymbol
SEXP R_TripleColonSymbol
SEXP R_TspSymbol
SEXP R_dot_Generic
SEXP R_dot_Method
SEXP R_dot_defined
SEXP R_dot_target

Detailed Description

Class CXXR::Symbol and associated C interface.


Function Documentation

Rboolean DDVAL ( SEXP  x)
inline

Does symbol relate to a ... expression?

Parameters:
xPointer to a CXXR::Symbol (checked).
Returns:
TRUE iff this symbol denotes an element of a ... expression.
SEXP PRINTNAME ( SEXP  x)
inline

Symbol name.

Parameters:
xPointer to a CXXR::Symbol (checked).
Returns:
Pointer to a CXXR::String representing x's name.
SEXP Rf_ddfindVar ( SEXP  symbol,
SEXP  rho 
)

Find value of a ..n Symbol.

Parameters:
symbolPointer to a Symbol (checked) whose name is of the form ..n, where n is a positive integer.
rhoPointer to an Environment, which must bind the symbol ... to a PairList comprising at least n elements. (All checked.)
Returns:
The 'car' of the nth element of the PairList to which ... is bound.
SEXP Rf_install ( const char *  name)
inline

Get a pointer to a regular Symbol object.

If no Symbol with the specified name currently exists, one will be created, and a pointer to it returned. Otherwise a pointer to the existing Symbol will be returned.

Parameters:
nameThe name of the required Symbol (CE_NATIVE encoding is assumed).
Returns:
Pointer to a Symbol (preexisting or newly created) with the required name.
Rboolean Rf_isSymbol ( SEXP  s)
inline

Test if SYMSXP.

Parameters:
sPointer to a CXXR::RObject.
Returns:
TRUE iff s points to a CXXR::RObject with SEXPTYPE SYMSXP.