|
CXXR (C++ R)
|
Macros used to provide cues to the uncxxr.pl script. More...

Go to the source code of this file.
Macros | |
| #define | CXXRBUILTINFUNCTION BuiltInFunction |
| uncxxr.pl deletes 'CXXRBUILTINFUNCTION::' | |
| #define | CXXRCONST const |
| const in CXXR, not const in CR. | |
| #define | CXXRCONSTRUCT(type, expr) type(expr) |
| uncxxr.pl replaces this by 'expr'. | |
| #define | CXXRCCAST(type, expr) const_cast<type>(expr) |
| uncxxr.pl replaces this by 'expr'. | |
| #define | CXXRSCAST(type, expr) static_cast<type>(expr) |
| uncxxr.pl replaces this by 'expr'. | |
| #define | CXXRFALSE FALSE |
| uncxxr.pl replaces this by '0'. | |
| #define | CXXRNOCAST(t) |
| Suppress cast unnecessary in C++. | |
| #define | CXXRTRUE TRUE |
| uncxxr.pl replaces this by '1'. | |
| #define | CXXRUNSIGNED unsigned |
| uncxxr.pl deletes this. | |
Macros used to provide cues to the uncxxr.pl script.
Where CR source files have been converted into C++ and otherwise adapted for use in CXXR, the script uncxxr.pl tries as far as possible to reverse the systematic changes. It is used when upgrading to a new version of R to distinguish substantive from routine changes.
This header file defines various macros that are used to provide cues to uncxxr.pl to how it should operate: the macro expansions defined below are the ones required in CXXR; uncxxr.pl will expand them differently, reflecting CR usage.
| #define CXXRCCAST | ( | type, | |
| expr | |||
| ) | const_cast<type>(expr) |
uncxxr.pl replaces this by 'expr'.
This macro is used in former CR code where a const_cast is needed in C++.
| #define CXXRCONST const |
| #define CXXRCONSTRUCT | ( | type, | |
| expr | |||
| ) | type(expr) |
uncxxr.pl replaces this by 'expr'.
This macro is used in former CR code where an explicit constructor expression needs to be used in C++.
| #define CXXRFALSE FALSE |
uncxxr.pl replaces this by '0'.
This macro is used in former CR code which uses 0 where C++ needs FALSE.
| #define CXXRNOCAST | ( | t | ) |
Suppress cast unnecessary in C++.
uncxxr.pl deletes the characters CXXRNOCAST so as to leave a C-style cast to type t. CXXR uses this macro in files inherited from CR to suppress casts (usually of NULL) that are unnecessary in C++ (and probably in C also).
| #define CXXRSCAST | ( | type, | |
| expr | |||
| ) | static_cast<type>(expr) |
uncxxr.pl replaces this by 'expr'.
This macro is used in former CR code where a static_cast is needed in C++.
| #define CXXRTRUE TRUE |
uncxxr.pl replaces this by '1'.
This macro is used in former CR code which uses 1 where C++ needs TRUE.
| #define CXXRUNSIGNED unsigned |
uncxxr.pl deletes this.
This macro is used in former CR code where CXXR needs unsigned.
1.8.1