Expand description
A low-level libR binding library which is kept deliberately minimal.
In particular, it has no external dependencies other that libR installed on the target.
§Synopsis
The libR-sys
crate is a low level bindgen wrapper for the R
programming language. The intention is to allow one or more extension
mechanisms to be implemented for rust.
Effort to make the extension libraries platform-independent can be concentrated here.
§Examples
use libR_sys::{Rf_initialize_R, R_CStackLimit, setup_Rmainloop};
use std::os::raw;
unsafe {
std::env::set_var("R_HOME", "/usr/lib/R");
let arg0 = "R\0".as_ptr() as *mut raw::c_char;
Rf_initialize_R(1, [arg0].as_mut_ptr());
R_CStackLimit = usize::max_value();
setup_Rmainloop();
}
§Conditional compilation depending on R installation
The libR-sys crate provides these environmental variables that you can use in build.rs
:
DEP_R_R_VERSION_MAJOR
: The major part of the R version (e.g.4
in version4.1.0
)DEP_R_R_VERSION_MINOR
: The minor part of the R version (e.g.1
in version4.1.0
)DEP_R_R_VERSION_PATCH
: The patch part of the R version (e.g.0
in version4.1.0
)DEP_R_R_VERSION_DEVEL
:true
if the R is a development version, otherwisefalse
DEP_R_R_VERSION_STRING
: The full version string (e.g.R version 4.1.0 (2021-05-18)
)DEP_R_R_HOME
: The R home directory
§Example build.rs
ⓘ
use std::env;
fn main() {
// Set R_HOME envvar, and refer to it on compile time by env!("R_HOME")
let r_home = env::var("DEP_R_R_HOME").unwrap();
println!("cargo:rustc-env=R_HOME={}", r_home);
// Enable cfg setting to conditionally compile a code using a feature
// available only on newer versions of R
let major = env::var("DEP_R_R_VERSION_MAJOR").unwrap();
let minor = env::var("DEP_R_R_VERSION_MINOR").unwrap();
if &*major >= "4" && &*minor >= "1" {
println!("cargo:rustc-cfg=use_a_feature");
}
}
Structs§
- GESystem
Desc - R_
CMethod Def - These are very similar to those in Rdynpriv.h, but we maintain them separately to give us more freedom to do some computations on the internal versions that are derived from these definitions.
- R_
Call Method Def - R_
GE_ gcontext - A structure containing graphical parameters
- R_
allocator - R_
altrep_ class_ t - R_
hashtab_ type - try to allow some type checking
- R_
inpstream_ st - R_
outpstream_ st - Rcomplex
- R 4.3 redefined
Rcomplex
to a union for compatibility with Fortran. But the old definition is compatible both the union version and the struct version. See: https://github.com/extendr/extendr/issues/524 - Rf_
Registered Native Symbol - SEXPREC
- _Dev
Desc - _Dll
Info - _GEDev
Desc - _iobuf
Enums§
- GEUnit
- The graphics engine will only accept locations and dimensions in native device coordinates, but it provides the following functions for converting between a couple of simple alternative coordinate systems and device coordinates: DEVICE = native units of the device NDC = Normalised device coordinates INCHES = inches (!) CM = centimetres (!!)
- GEevent
- N01type
- Different kinds of “N(0,1)” generators :
- Native
Symbol Type - Parse
Status - PARSE_NULL will not be returned by R_ParseVector
- RNGtype
- R_
GE_ lineend - Some line end/join constants
- R_
GE_ linejoin - R_
KeyName - These give the indices of some known keys
- R_
Mouse Event - These are the three possible mouse events
- R_
pstream_ format_ t - Rboolean
- SEXPTYPE
- —— enum_SEXPTYPE —–
- Sampletype
- Different ways to generate discrete uniform samples
- _bindgen_
ty_ 1 - ALTREP sorting support
- cetype_
t - cetype_t is an identifier reseved by POSIX, but it is well established as public. Could remap by a #define though
- nchar_
type - ../main/character.c :
Constants§
- DEG2RAD
- ENABLE_
NLS - HAVE_
EXPM1 - HAVE_
F77_ UNDERSCORE - HAVE_
HYPOT - HAVE_
LOG1P - HAVE_
UINTPTR_ T - HAVE_
WORKING_ LOG1P - HT_
TYPE_ ADDRESS - HT_
TYPE_ IDENTICAL - IDENT_
ATTR_ BY_ ORDER - IDENT_
EXTPTR_ AS_ REF - IDENT_
NA_ AS_ BITS - IDENT_
NUM_ AS_ BITS - IDENT_
USE_ BYTECODE - IDENT_
USE_ CLOENV - IDENT_
USE_ SRCREF - IEEE_
754 - KNOWN_
UNSORTED - LTY_
BLANK - LTY_
DASHED - LTY_
DOTDASH - LTY_
DOTTED - LTY_
LONGDASH - LTY_
SOLID - LTY_
TWODASH - MAX_
GRAPHICS_ SYSTEMS - MAX_
NUM_ SEXPTYPE - M_
1_ SQRT_ 2PI - M_
LN_ 2PI - M_
LN_ SQRT_ 2PI - M_
LN_ SQRT_ PI - M_
LN_ SQRT_ PId2 - M_
SQRT_ 3 - M_
SQRT_ 2dPI - M_
SQRT_ 32 - M_
SQRT_ PI - NAMEDMAX
- PR18534fixed
- R_
CODESET_ MAX - R_DAY
- R_
GE_ alpha Mask - R_
GE_ capability_ capture - R_
GE_ capability_ clipping Paths - R_
GE_ capability_ compositing - R_
GE_ capability_ events - R_
GE_ capability_ glyphs - R_
GE_ capability_ locator - R_
GE_ capability_ masks - R_
GE_ capability_ paths - R_
GE_ capability_ patterns - R_
GE_ capability_ raster Image - R_
GE_ capability_ semi Transparency - R_
GE_ capability_ transformations - R_
GE_ capability_ transparent Background - R_
GE_ composite Add - R_
GE_ composite Atop - R_
GE_ composite Clear - R_
GE_ composite Color Burn - R_
GE_ composite Color Dodge - R_
GE_ composite Darken - R_
GE_ composite Dest - R_
GE_ composite Dest Atop - R_
GE_ composite Dest In - R_
GE_ composite Dest Out - R_
GE_ composite Dest Over - R_
GE_ composite Difference - R_
GE_ composite Exclusion - R_
GE_ composite Hard Light - R_
GE_ composite In - R_
GE_ composite Lighten - R_
GE_ composite Multiply - R_
GE_ composite Out - R_
GE_ composite Over - R_
GE_ composite Overlay - R_
GE_ composite Saturate - R_
GE_ composite Screen - R_
GE_ composite Soft Light - R_
GE_ composite Source - R_
GE_ composite Xor - R_
GE_ definitions - R_
GE_ device Clip - R_
GE_ even OddRule - R_
GE_ glyphs - R_
GE_ group - R_
GE_ linear Gradient Pattern - R_
GE_ luminance Mask - R_
GE_ nonZero Winding Rule - R_
GE_ pattern Extend None - R_
GE_ pattern Extend Pad - R_
GE_ pattern Extend Reflect - R_
GE_ pattern Extend Repeat - R_
GE_ radial Gradient Pattern - R_
GE_ text_ style_ italic - R_
GE_ text_ style_ normal - R_
GE_ text_ style_ oblique - R_
GE_ tiling Pattern - R_
GE_ version - R_
LEN_ T_ MAX - R_MAJOR
- R_MINOR
- R_MONTH
- R_NICK
- R_
PRIdXLEN_ T - R_
SHORT_ LEN_ MAX - R_
STATUS - R_
SVN_ REVISION - R_
USE_ PROTOTYPES - R_
VERSION - R_
VERSION_ STRING - R_
XDR_ DOUBLE_ SIZE - R_
XDR_ INTEGER_ SIZE - R_
XLEN_ T_ MAX - R_YEAR
- SINGLESXP
- SIZEOF_
SIZE_ T - SORTED_
DECR - SORTED_
DECR_ NA_ 1ST - SORTED_
INCR - SORTED_
INCR_ NA_ 1ST - SUPPORT_
MBCS - SUPPORT_
UTF8 - TYPE_
BITS - UNKNOWN_
SORTEDNESS - __
STDC_ WANT_ IEC_ 60559_ FUNCS_ EXT__ - left
Button - middle
Button - right
Button
Statics§
- R_
AsCharacter ⚠Symbol - “as.character”
- R_
Atsign ⚠Symbol - “@”
- R_
Base ⚠Env - The base environment; formerly R_NilValue
- R_
Base ⚠Namespace - The (fake) namespace for base
- R_
Base ⚠Symbol - “base”
- R_
Blank ⚠Scalar String - “” as a STRSXP
- R_
Blank ⚠String - “” as a CHARSXP
- R_
Brace ⚠Symbol - “{”
- R_
Bracket2 ⚠Symbol - “[[”
- R_
Bracket ⚠Symbol - “[”
- R_
CStack ⚠Limit - C stack limit
- R_
Class ⚠Symbol - “class”
- R_
Current ⚠Expression - Use current expression (marker)
- R_
Device ⚠Symbol - “.Device”
- R_
DimNames ⚠Symbol - “dimnames”
- R_
DimSymbol ⚠ - “dim”
- R_
Dollar ⚠Symbol - “$”
- R_
Dots ⚠Symbol - “…”
- R_
Double ⚠Colon Symbol - “::”
- R_
Drop ⚠Symbol - “drop”
- R_
Empty ⚠Env - An empty environment at the root of the environment tree
- R_
Eval ⚠Symbol - “eval”
- R_
Function ⚠Symbol - “function”
- R_
Global ⚠Env - The “global” environment
- R_
InBC ⚠Interpreter - To be found in BC interp. state (marker)
- R_
Lastvalue ⚠Symbol - “.Last.value”
- R_
Levels ⚠Symbol - “levels”
- R_
Missing ⚠Arg - Missing argument marker
- R_
Mode ⚠Symbol - “mode”
- R_NaInt⚠
- NA_INTEGER:= INT_MIN currently
- R_NaN⚠
- IEEE NaN
- R_
NaReal ⚠ - NA_REAL: IEEE
- R_
NaRm ⚠Symbol - “na.rm”
- R_
NaString ⚠ - NA_STRING as a CHARSXP
- R_
Name ⚠Symbol - “name”
- R_
Names ⚠Symbol - “names”
- R_
Namespace ⚠EnvSymbol - “.NAMESPACE.”
- R_
Namespace ⚠Registry - Registry for registered namespaces
- R_
NegInf ⚠ - IEEE -Inf
- R_
NilValue ⚠ - The nil object
- R_
Package ⚠Symbol - “package”
- R_
PosInf ⚠ - IEEE Inf
- R_
Previous ⚠Symbol - “previous”
- R_
Quote ⚠Symbol - “quote”
- R_
Restart ⚠Token - Marker for restarted function calls
- R_
RowNames ⚠Symbol - “row.names”
- R_
Seeds ⚠Symbol - “.Random.seed”
- R_
Sort ⚠List Symbol - “sort.list”
- R_
Source ⚠Symbol - “source”
- R_
Spec ⚠Symbol - “spec”
- R_
Srcref ⚠ - Current srcref, for debuggers
- R_
Triple ⚠Colon Symbol - “:::”
- R_
TspSymbol ⚠ - “tsp”
- R_
Unbound ⚠Value - Unbound marker
- R_
base ⚠Symbol - <– backcompatible version of:
- R_
dot_ ⚠Generic - “.Generic”
- R_
dot_ ⚠Method - “.Method”
- R_
dot_ ⚠defined - “.defined”
- R_
dot_ ⚠package Name - “.packageName”
- R_
dot_ ⚠target - “.target”
- R_
interrupts_ ⚠pending - R_
interrupts_ ⚠suspended - User
Break ⚠ - mbcslocale⚠
Functions§
- ALTREP⚠
- ALTREP_
CLASS ⚠ - ALTREP support
- ATTRIB⚠
- General Cons Cell Attributes
- BODY⚠
- CAAR⚠
- CAD4R⚠
- CAD5R⚠
- CADDDR⚠
- CADDR⚠
- CADR⚠
- CAR⚠
- CDAR⚠
- CDDDR⚠
- CDDR⚠
- CDR⚠
- CLOENV⚠
- COMPLEX⚠
- COMPLEX_
ELT ⚠ - COMPLEX_
GET_ ⚠REGION - COMPLEX_
OR_ ⚠NULL - COMPLEX_
RO ⚠ - CleanEd⚠
- DATAPTR⚠
- DATAPTR_
OR_ ⚠NULL - DATAPTR_
RO ⚠ - DUPLICATE_
ATTRIB ⚠ - ENCLOS⚠
- EXTPTR_
PROT ⚠ - External pointer access macros
- EXTPTR_
PTR ⚠ - EXTPTR_
TAG ⚠ - FORMALS⚠
- Closure Access Functions
- GA_
appcleanup ⚠ - GA_
initapp ⚠ - GECap⚠
- GECircle⚠
- GEExpression
Height ⚠ - GEExpression
Metric ⚠ - GEExpression
Width ⚠ - From plotmath.c
- GEFill⚠
- GEFill
Stroke ⚠ - GEGlyph⚠
- GELine⚠
- GEMath
Text ⚠ - GEMetric
Info ⚠ - GEMode⚠
- GENew
Page ⚠ - GEPath⚠
- GEPolygon⚠
- GEPolyline⚠
- GEPretty⚠
- GERaster⚠
- GERect⚠
- GESet
Clip ⚠ - GEStr
Height ⚠ - GEStr
Metric ⚠ - GEStr
Width ⚠ - GEStroke⚠
- GESymbol⚠
- GEText⚠
- GEXspline⚠
- GE_
LENDget ⚠ - GE_
LENDpar ⚠ - GE_
LJOI ⚠Nget - GE_
LJOI ⚠Npar - GE_
LTYget ⚠ - GE_
LTYpar ⚠
- GEadd
Device ⚠ - GEadd
Device2 ⚠ - GEadd
Device2f ⚠ - GEcheck
State ⚠ - GEcontour
Lines ⚠ - From plot3d.c : used in package clines
- GEcopy
Display ⚠List - GEcreate
DevDesc ⚠ - GEcreate
Snapshot ⚠ - GEcurrent
Device ⚠ - GEdestroy
DevDesc ⚠ - GEdevice
Dirty ⚠ - GEdevice
Number ⚠ - GEdirty
Device ⚠ - GEfrom
Device ⚠Height - GEfrom
Device ⚠Width - GEfrom
DeviceX ⚠ - GEfrom
DeviceY ⚠ - GEget
Device ⚠ - GEhandle
Event ⚠ - GEinit
Display ⚠List - GEkill
Device ⚠ - GEnull
Device ⚠ - GEon
Exit ⚠ - GEplay
Display ⚠List - GEplay
Snapshot ⚠ - GErecord
Graphic ⚠Operation - GErecording⚠
- GEregister
System ⚠ - GEregister
With ⚠Device - GEstring_
to_ ⚠pch - GEsystem
State ⚠ - GEto
Device ⚠Height - GEto
Device ⚠Width - GEto
DeviceX ⚠ - GEto
DeviceY ⚠ - GEunregister
System ⚠ - GetRN
Gstate ⚠ - INTEGER⚠
- INTEGE
R0 ⚠ - INTEGER_
ELT ⚠ - INTEGER_
GET_ ⚠REGION - INTEGER_
IS_ ⚠SORTED - metadata access
- INTEGER_
NO_ ⚠NA - INTEGER_
OR_ ⚠NULL - INTEGER_
RO ⚠ - IS_
LONG_ ⚠VEC - IS_
S4_ ⚠OBJECT - S4 object testing
- IS_
SCALAR ⚠ - LENGTH⚠
- Vector Access Functions
- LENGTH_
EX ⚠ - LOGICAL⚠
- LOGICA
L0 ⚠ - LOGICAL_
ELT ⚠ - LOGICAL_
GET_ ⚠REGION - LOGICAL_
IS_ ⚠SORTED - LOGICAL_
NO_ ⚠NA - LOGICAL_
OR_ ⚠NULL - LOGICAL_
RO ⚠ - MARK⚠
- MARK_
NOT_ ⚠MUTABLE - MISSING⚠
- OBJECT⚠
- PRINTNAME⚠
- Symbol Access Functions
- PutRN
Gstate ⚠ - RAW⚠
- RAW0⚠
- RAW_ELT⚠
- RAW_
GET_ ⚠REGION - RAW_
OR_ ⚠NULL - RAW_RO⚠
- REAL⚠
- REAL_
ELT ⚠ - REAL_
GET_ ⚠REGION - REAL_
IS_ ⚠SORTED - REAL_
NO_ ⚠NA - REAL_
OR_ ⚠NULL - REAL_RO⚠
- REFCNT⚠
- REprintf⚠
- REvprintf⚠
- RSTEP⚠
- RTRACE⚠
- R_
Active ⚠Binding Function - R_
Binding ⚠IsActive - R_
Binding ⚠IsLocked - R_
Bytecode ⚠Expr - R_CHAR⚠
- R_
Check ⚠Device Available - Check for an available device slot
- R_
Check ⚠Device Available Bool - R_
Check ⚠Stack - R_
Check ⚠Stack2 - R_
Check ⚠User Interrupt - R_
Clean ⚠Temp Dir - R_
Clear ⚠External Ptr - R_
Closure ⚠Expr - R_
Continue ⚠Unwind - R_
Environment ⚠IsLocked - R_
Exec ⚠With Cleanup - R_
Expand ⚠File Name - ../../main/util.c and others :
- R_
External ⚠PtrAddr - R_
External ⚠PtrAddr Fn - R_
External ⚠PtrProtected - R_
External ⚠PtrTag - R_
Find ⚠Namespace - R_
Find ⚠Package Env - R_
Find ⚠Symbol - R_
GE_ ⚠VStr Height - R_
GE_ ⚠VStr Width - From vfonts.c
- R_
GE_ ⚠VText - R_
GE_ ⚠check Version OrDie - R_
GE_ ⚠clip Path Fill Rule - R_
GE_ ⚠getVersion - R_
GE_ ⚠glyph Colour - R_
GE_ ⚠glyph Font - R_
GE_ ⚠glyph Font Family - R_
GE_ ⚠glyph Font File - R_
GE_ ⚠glyph Font Index - R_
GE_ ⚠glyph FontP Sname - R_
GE_ ⚠glyph Font Style - R_
GE_ ⚠glyph Font Weight - R_
GE_ ⚠glyphID - R_
GE_ ⚠glyph Info Fonts - R_
GE_ ⚠glyph Info Glyphs - R_
GE_ ⚠glyph Size - R_
GE_ ⚠glyphX - R_
GE_ ⚠glyphY - R_
GE_ ⚠isPattern - Patterns - from ../../main/patterns.c
- R_
GE_ ⚠linear Gradient Colour - R_
GE_ ⚠linear Gradient Extend - R_
GE_ ⚠linear Gradient NumStops - R_
GE_ ⚠linear Gradient Stop - R_
GE_ ⚠linear Gradient X1 - R_
GE_ ⚠linear Gradient X2 - R_
GE_ ⚠linear Gradient Y1 - R_
GE_ ⚠linear Gradient Y2 - R_
GE_ ⚠mask Type - R_
GE_ ⚠pattern Type - R_
GE_ ⚠radial GradientC X1 - R_
GE_ ⚠radial GradientC X2 - R_
GE_ ⚠radial GradientC Y1 - R_
GE_ ⚠radial GradientC Y2 - R_
GE_ ⚠radial Gradient Colour - R_
GE_ ⚠radial Gradient Extend - R_
GE_ ⚠radial Gradient NumStops - R_
GE_ ⚠radial Gradient R1 - R_
GE_ ⚠radial Gradient R2 - R_
GE_ ⚠radial Gradient Stop - R_
GE_ ⚠raster Interpolate - R_
GE_ ⚠raster Resize ForRotation - R_
GE_ ⚠raster Rotate - R_
GE_ ⚠raster Rotated Offset - R_
GE_ ⚠raster Rotated Size - R_
GE_ ⚠raster Scale - Raster operations
- R_
GE_ ⚠str2col - Convert either a name or a #RRGGBB[AA] string to internal. Because people were using it, it also converts “1”, “2” … to a colour in the palette, and “0” to transparent white.
- R_
GE_ ⚠tiling Pattern Extend - R_
GE_ ⚠tiling Pattern Function - R_
GE_ ⚠tiling Pattern Height - R_
GE_ ⚠tiling Pattern Width - R_
GE_ ⚠tiling PatternX - R_
GE_ ⚠tiling PatternY - R_
GetC ⚠Callable - R_
GetCurrent ⚠Env - R_
GetCurrent ⚠Srcref - srcref related functions
- R_
GetSrc ⚠Filename - R_
HasFancy ⚠Bindings - R_
HashtabSEXP ⚠ - R_
Init ⚠File InPStream - R_
Init ⚠File OutP Stream - R_
Init ⚠InPStream - R_
Init ⚠OutP Stream - R_IsNA⚠
- NA_STRING is a SEXP, so defined in Rinternals.h
- R_IsNaN⚠
- R_
IsNamespace ⚠Env - R_
IsPackage ⚠Env - R_
Lock ⚠Binding - R_
Lock ⚠Environment - R_
Make ⚠Active Binding - R_
Make ⚠External Ptr - External pointer interface
- R_
Make ⚠External PtrFn - Added in R 3.4.0
- R_
Make ⚠Unwind Cont - R_
Make ⚠Weak Ref - Weak reference interface
- R_
Make ⚠Weak RefC - R_
Namespace ⚠EnvSpec - R_
NewEnv ⚠ - Environment and Binding Features
- R_
NewPreciousM ⚠Set - R_
Package ⚠EnvName - R_
Parse ⚠Eval String - R_
Parse ⚠String - R_
Parse ⚠Vector - R_
Preserve ⚠InMSet - R_
Preserve ⚠Object - preserve objects across GCs
- R_
Protect ⚠With Index - R_
RegisterC ⚠Callable - Interface for exporting and importing functions from one package for use from C code in a package. The registration part probably ought to be integrated with the other registrations. The naming of these routines may be less than ideal.
- R_
RegisterC ⚠Finalizer - R_
RegisterC ⚠Finalizer Ex - R_
Register ⚠Finalizer - R_
Register ⚠Finalizer Ex - R_
Release ⚠FromM Set - R_
ReleaseM ⚠Set - R_
Release ⚠Object - R_
Reprotect ⚠ - R_
RunExit ⚠Finalizers - R_
RunPending ⚠Finalizers - R_
RunWeak ⚠RefFinalizer - R_
S4_ ⚠extends - S3-S4 class (inheritance), attrib.c
- R_
Serialize ⚠ - R_
Serialize ⚠Info - R_
SetExternal ⚠PtrAddr - R_
SetExternal ⚠PtrProtected - R_
SetExternal ⚠PtrTag - R_
Show ⚠Message - R_
Toplevel ⚠Exec - Protected evaluation
- R_
Unserialize ⚠ - R_
Unwind ⚠Protect - R_
Weak ⚠RefKey - R_
Weak ⚠RefValue - R_
XDRDecode ⚠Double - R_
XDRDecode ⚠Integer - R_
XDREncode ⚠Double - R_
XDREncode ⚠Integer - R_alloc⚠
- R_
allocLD ⚠ - R_
altrep_ ⚠data1 - R_
altrep_ ⚠data2 - R_
altrep_ ⚠inherits - R_
asHashtable ⚠ - public C interface
- R_atof⚠
- These two are guaranteed to use ‘.’ as the decimal point, and to accept “NA”. Documented since 4.4.0 patched.
- R_
body_ ⚠no_ src - R_
calloc_ ⚠gc - R_
check_ ⚠class_ and_ super - supporting a C-level version of is(., .) :
- R_
check_ ⚠class_ etc - R_
chk_ ⚠calloc - S Like Memory Management
- R_
chk_ ⚠free - R_
chk_ ⚠realloc - R_
clrhash ⚠ - R_
compute_ ⚠identical - R_csort⚠
- R_
do_ ⚠MAKE_ CLASS - class definition, new objects (objects.c)
- R_
do_ ⚠new_ object - R_
do_ ⚠slot - slot management (in attrib.c)
- R_
do_ ⚠slot_ assign - R_
dot_ ⚠Last - Shutdown actions
- R_
duplicate_ ⚠attr - R_
exists ⚠VarIn Frame - R_
extends ⚠ - R_
finite ⚠ - R_
force ⚠AndCall - Calling a function with arguments evaluated
- R_
force ⚠Symbols - R_
free_ ⚠tmpnam - R_gc⚠
- R_
gc_ ⚠running - R_
getClass ⚠Def - R_
getClass ⚠Def_ R - R_
getDll ⚠Info - R_
getEmbedding ⚠DllInfo - To be used by applications embedding R to register their symbols that are not related to any dynamic module
- R_
gethash ⚠ - R_
has_ ⚠methods_ attached - R_
has_ ⚠slot - R_
isHashtable ⚠ - R_
isTRUE ⚠ - R_
isVirtual ⚠Class - R_isort⚠
- ../../main/sort.c :
- R_
lsInternal ⚠ - R_
lsInternal3 ⚠ - R_
make_ ⚠altcomplex_ class - R_
make_ ⚠altinteger_ class - R_
make_ ⚠altlist_ class - R_
make_ ⚠altlogical_ class - R_
make_ ⚠altraw_ class - R_
make_ ⚠altreal_ class - R_
make_ ⚠altstring_ class - R_
malloc_ ⚠gc - R_
maphash ⚠ - R_
maphashC ⚠ - R_
max_ ⚠col - ../../appl/maxcol.c
- R_
mkhashtab ⚠ - R_
new_ ⚠altrep - R_
numhash ⚠ - R_
order ⚠Vector - C version of R’s indx <- order(…, na.last, decreasing) : e.g. arglist = Rf_lang2(x,y) or Rf_lang3(x,y,z)
- R_
order ⚠Vector1 - C version of R’s indx <- order(x, na.last, decreasing) :
- R_pow⚠
- R’s versions with !R_FINITE checks
- R_
pow_ ⚠di - R_
pretty ⚠ - appl/pretty.c: for use in engine.c and util.c
- R_qsort⚠
- ../../main/qsort.c : / / dummy renamed to II to avoid problems with g++ on Solaris
- R_
qsort_ ⚠I - R_
qsort_ ⚠int - R_
qsort_ ⚠int_ I - R_
realloc_ ⚠gc - R_
register ⚠Routines - R_
remhash ⚠ - R_
remove ⚠VarFrom Frame - R_rsort⚠
- R_
sample_ ⚠kind - R_
set_ ⚠altcomplex_ Elt_ method - R_
set_ ⚠altcomplex_ Get_ region_ method - R_
set_ ⚠altinteger_ Elt_ method - R_
set_ ⚠altinteger_ Get_ region_ method - R_
set_ ⚠altinteger_ Is_ sorted_ method - R_
set_ ⚠altinteger_ Max_ method - R_
set_ ⚠altinteger_ Min_ method - R_
set_ ⚠altinteger_ No_ NA_ method - R_
set_ ⚠altinteger_ Sum_ method - R_
set_ ⚠altlist_ Elt_ method - R_
set_ ⚠altlist_ Set_ elt_ method - R_
set_ ⚠altlogical_ Elt_ method - R_
set_ ⚠altlogical_ Get_ region_ method - R_
set_ ⚠altlogical_ Is_ sorted_ method - R_
set_ ⚠altlogical_ No_ NA_ method - R_
set_ ⚠altlogical_ Sum_ method - R_
set_ ⚠altraw_ Elt_ method - R_
set_ ⚠altraw_ Get_ region_ method - R_
set_ ⚠altreal_ Elt_ method - R_
set_ ⚠altreal_ Get_ region_ method - R_
set_ ⚠altreal_ Is_ sorted_ method - R_
set_ ⚠altreal_ Max_ method - R_
set_ ⚠altreal_ Min_ method - R_
set_ ⚠altreal_ No_ NA_ method - R_
set_ ⚠altreal_ Sum_ method - R_
set_ ⚠altrep_ Coerce_ method - R_
set_ ⚠altrep_ DuplicateEX_ method - R_
set_ ⚠altrep_ Duplicate_ method - R_
set_ ⚠altrep_ Inspect_ method - R_
set_ ⚠altrep_ Length_ method - R_
set_ ⚠altrep_ Serialized_ state_ method - R_
set_ ⚠altrep_ UnserializeEX_ method - R_
set_ ⚠altrep_ Unserialize_ method - R_
set_ ⚠altrep_ data1 - R_
set_ ⚠altrep_ data2 - R_
set_ ⚠altstring_ Elt_ method - R_
set_ ⚠altstring_ Is_ sorted_ method - R_
set_ ⚠altstring_ No_ NA_ method - R_
set_ ⚠altstring_ Set_ elt_ method - R_
set_ ⚠altvec_ Dataptr_ method - R_
set_ ⚠altvec_ Dataptr_ or_ null_ method - R_
set_ ⚠altvec_ Extract_ subset_ method - R_
sethash ⚠ - R_
strtod ⚠ - R_
system ⚠ - R_
tmpnam ⚠ - R_
tmpnam2 ⚠ - R_
tryCatch ⚠ - R_
tryCatch ⚠Error - R_
tryEval ⚠ - R_
tryEval ⚠Silent - R_
type ⚠ToChar - R_
typhash ⚠ - R_
unLock ⚠Binding - R_
unif_ ⚠index - R_
useDynamic ⚠Symbols - R_
with ⚠Calling Error Handler - Rdqagi⚠
- Rdqags⚠
- vectorizing function f(x[1:n], …) -> x[] {overwriting x[]}.
- Rf_
Adobe ⚠Symbol2utf8 - Useful for devices: translates Adobe symbol encoding to UTF-8
- Rf_
Create ⚠AtVector - Rf_
GAxis ⚠Pars - Rf_
GetArray ⚠Dimnames - Rf_
GetCol ⚠Names - Rf_
GetMatrix ⚠Dimnames - Rf_
GetOption ⚠ - Rf_
GetOption1 ⚠ - Rf_
GetOption ⚠Digits - Rf_
GetOption ⚠Width - Rf_
GetRow ⚠Names - Rf_
NewFrame ⚠Confirm - Rf_
NoDevices ⚠ - Rf_
NumDevices ⚠ - How many devices exist ? (>= 1)
- Rf_
Pair ⚠ToVector List - Rf_
Print ⚠Value - Rf_
RGBpar ⚠ - Convert an element of a R colour specification (which might be a number or a string) into an internal colour specification.
- Rf_
RGBpar3 ⚠ - Rf_
S3Class ⚠ - Rf_
Scalar ⚠Complex - Rf_
Scalar ⚠Integer - Rf_
Scalar ⚠Logical - Rf_
Scalar ⚠Raw - Rf_
Scalar ⚠Real - Rf_
Scalar ⚠String - Rf_
String ⚠Blank - Rf_
String ⚠False - this group is not API
- Rf_
String ⚠True - Rf_
Vector ⚠ToPair List - Rf_
acopy_ ⚠string - Other Internally Used Functions, excluding those which are inline-able
- Rf_
alloc3D ⚠Array - Rf_
alloc ⚠Array - Rf_
alloc ⚠Lang - Rf_
alloc ⚠List - Rf_
alloc ⚠Matrix - Rf_
alloc ⚠S4Object - Rf_
allocS ⚠Exp - Rf_
alloc ⚠Vector - These are the public inlinable functions that are provided in Rinlinedfuns.h It is essential that these do not appear in any other header file, with or without the Rf_ prefix.
- Rf_
alloc ⚠Vector3 - Rf_
any_ ⚠duplicated - Rf_
any_ ⚠duplicated3 - Rf_
asChar ⚠ - Type Coercions of all kinds
- Rf_
asCharacter ⚠Factor - Rf_
asComplex ⚠ - Rf_
asInteger ⚠ - Rf_
asLogical ⚠ - Rf_
asReal ⚠ - Rf_asS4⚠
- Rf_
bessel_ ⚠i - Bessel Functions
- Rf_
bessel_ ⚠i_ ex - Rf_
bessel_ ⚠j - Rf_
bessel_ ⚠j_ ex - Rf_
bessel_ ⚠k - Rf_
bessel_ ⚠k_ ex - Rf_
bessel_ ⚠y - Rf_
bessel_ ⚠y_ ex - Rf_beta⚠
- Rf_
cPsort ⚠ - Rf_
choose ⚠ - Rf_
classgets ⚠ - Rf_
coerce ⚠Vector - Rf_
col2name ⚠ - Convert an internal colour specification to/from a colour name
- Rf_
conformable ⚠ - Rf_cons⚠
- Rf_
copy ⚠List Matrix - Rf_
copy ⚠Matrix - Rf_
copy ⚠Most Attrib - Rf_
copy ⚠Vector - Rf_
curDevice ⚠ - Return the number of the current device.
- Rf_
dbeta ⚠ - Beta Distribution
- Rf_
dbinom ⚠ - Rf_
dbinom_ ⚠raw - Binomial Distribution
- Rf_
dcauchy ⚠ - Cauchy Distribution
- Rf_
dchisq ⚠ - Chi-squared Distribution
- Rf_
define ⚠Var - Rf_
desc2GE ⚠Desc - map DevDesc to enclosing GEDevDesc
- Rf_dexp⚠
- Exponential Distribution
- Rf_df⚠
- F Distribution
- Rf_
dgamma ⚠ - Gamma Distribution
- Rf_
dgeom ⚠ - Geometric Distribution
- Rf_
dhyper ⚠ - Hypergeometric Distribution
- Rf_
digamma ⚠ - Rf_
dimgets ⚠ - Rf_
dimnamesgets ⚠ - Rf_
dlnorm ⚠ - Lognormal Distribution
- Rf_
dlogis ⚠ - Logistic Distribution
- Rf_
dnbeta ⚠ - Non-central Beta Distribution
- Rf_
dnbinom ⚠ - Negative Binomial Distribution
- Rf_
dnbinom_ ⚠mu - Rf_
dnchisq ⚠ - Non-central Chi-squared Distribution
- Rf_dnf⚠
- Non-central F Distribution
- Rf_
dnorm4 ⚠ - Normal Distribution
- Rf_dnt⚠
- Non-central Student t Distribution
- Rf_
doIdle ⚠ - Rf_
doKeybd ⚠ - Rf_
doMouse ⚠Event - Rf_
does ⚠Idle - Rf_
dpois ⚠ - Rf_
dpois_ ⚠raw - Poisson Distribution
- Rf_
dpsifn ⚠ - Rf_
dsignrank ⚠ - Wilcoxon Signed Rank Distribution
- Rf_dt⚠
- Student t Distribution
- Rf_
dunif ⚠ - Uniform Distribution
- Rf_
duplicate ⚠ - Rf_
duplicated ⚠ - the next really should not be here and is also in Defn.h
- Rf_
dweibull ⚠ - Weibull Distribution
- Rf_
dwilcox ⚠ - Wilcoxon Rank Sum Distribution
- Rf_elt⚠
- Rf_
endEmbeddedR ⚠ - Rf_
error ⚠ - Rf_
errorcall ⚠ - ../main/errors.c : / / needed for R_load/savehistory handling in front ends
- Rf_eval⚠
- Rf_
find ⚠Fun - Rf_
find ⚠Var - Rf_
find ⚠VarIn Frame - Rf_
fmax2 ⚠ - Rf_
fmin2 ⚠ - Rf_
fprec ⚠ - Rf_
fround ⚠ - Rf_
fsign ⚠ - Rf_
ftrunc ⚠ - Rf_
gammafn ⚠ - Gamma and Related Functions
- Rf_
getAttrib ⚠ - Rf_
getCharCE ⚠ - Rf_
iPsort ⚠ - Rf_
imax2 ⚠ - General Support Functions
- Rf_
imin2 ⚠ - Rf_
inherits ⚠ - Rf_
initialize_ ⚠R - Rf_
install ⚠ - Rf_
install ⚠Char - Rf_
install ⚠NoTr Char - Rf_
install ⚠TrChar - Rf_
isArray ⚠ - Rf_
isBasic ⚠Class - Rf_
isBlank ⚠String - Rf_
isComplex ⚠ - Rf_
isEnvironment ⚠ - Rf_
isExpression ⚠ - Rf_
isFactor ⚠ - Rf_
isFrame ⚠ - Rf_
isFunction ⚠ - Rf_
isInteger ⚠ - Rf_
isLanguage ⚠ - Rf_
isList ⚠ - Rf_
isLogical ⚠ - Rf_
isMatrix ⚠ - Rf_
isNew ⚠List - Rf_
isNull ⚠ - Various tests with macro versions in the internal headers
- Rf_
isNumber ⚠ - Rf_
isNumeric ⚠ - Rf_
isObject ⚠ - Rf_
isOrdered ⚠ - Rf_
isPair ⚠List - Rf_
isPrimitive ⚠ - Rf_
isReal ⚠ - Rf_isS4⚠
- Rf_
isString ⚠ - Rf_
isSymbol ⚠ - Rf_isTs⚠
- Rf_
isUnordered ⚠ - Rf_
isUnsorted ⚠ - Rf_
isUser ⚠Binop - Rf_
isVector ⚠ - Rf_
isVector ⚠Atomic - Rf_
isVector ⚠List - Rf_
isVectorizable ⚠ - Rf_
kill ⚠Device - Kill device which is identified by number.
- Rf_
lang1 ⚠ - Rf_
lang2 ⚠ - Rf_
lang3 ⚠ - Rf_
lang4 ⚠ - Rf_
lang5 ⚠ - Rf_
lang6 ⚠ - Rf_
last ⚠Elt - Rf_
lazy_ ⚠duplicate - Rf_
lbeta ⚠ - Rf_
lchoose ⚠ - Rf_
lcons ⚠ - Rf_
length ⚠ - Rf_
lengthgets ⚠ - Rf_
lgamma1p ⚠ - Rf_
lgammafn ⚠ - Rf_
lgammafn_ ⚠sign - Rf_
list1 ⚠ - Rf_
list2 ⚠ - Rf_
list3 ⚠ - Rf_
list4 ⚠ - Rf_
list5 ⚠ - Rf_
list6 ⚠ - Rf_
list ⚠Append - Rf_
log1mexp ⚠ - Rf_
log1pexp ⚠ - Rf_
log1pmx ⚠ - Rf_
logspace_ ⚠add - Compute the log of a sum or difference from logs of terms, i.e.,
- Rf_
logspace_ ⚠sub - Rf_
logspace_ ⚠sum - Rf_
match ⚠ - Rf_
mkChar ⚠ - Rf_
mkCharCE ⚠ - Rf_
mkChar ⚠Len - Rf_
mkChar ⚠LenCE - Rf_
mkNamed ⚠ - Rf_
mkString ⚠ - Rf_
namesgets ⚠ - Rf_
ncols ⚠ - Rf_
ndev ⚠Number - Properly declared version of devNumber
- Rf_
next ⚠Device - Return the number of the next device.
- Rf_
nlevels ⚠ - Rf_
nrows ⚠ - Rf_
nthcdr ⚠ - Rf_
onintr ⚠ - Rf_
pbeta ⚠ - Rf_
pbinom ⚠ - Rf_
pcauchy ⚠ - Rf_
pchisq ⚠ - Rf_
pentagamma ⚠ - Rf_pexp⚠
- Rf_pf⚠
- Rf_
pgamma ⚠ - Rf_
pgeom ⚠ - Rf_
phyper ⚠ - Rf_
plnorm ⚠ - Rf_
plogis ⚠ - Rf_
pnbeta ⚠ - Rf_
pnbinom ⚠ - Rf_
pnbinom_ ⚠mu - Rf_
pnchisq ⚠ - Rf_pnf⚠
- Rf_
pnorm5 ⚠ - Rf_
pnorm_ ⚠both - Rf_pnt⚠
- Rf_
pow1p ⚠ - Rf_
ppois ⚠ - Rf_
prev ⚠Device - Return the number of the previous device.
- Rf_
protect ⚠ - Rf_
psigamma ⚠ - Rf_
psignrank ⚠ - Rf_
psmatch ⚠ - Rf_pt⚠
- Rf_
ptukey ⚠ - Studentized Range Distribution
- Rf_
punif ⚠ - Rf_
pweibull ⚠ - Rf_
pwilcox ⚠ - Rf_
qbeta ⚠ - Rf_
qbinom ⚠ - Rf_
qcauchy ⚠ - Rf_
qchisq ⚠ - Rf_qexp⚠
- Rf_qf⚠
- Rf_
qgamma ⚠ - Rf_
qgeom ⚠ - Rf_
qhyper ⚠ - Rf_
qlnorm ⚠ - Rf_
qlogis ⚠ - Rf_
qnbeta ⚠ - Rf_
qnbinom ⚠ - Rf_
qnbinom_ ⚠mu - Rf_
qnchisq ⚠ - Rf_qnf⚠
- Rf_
qnorm5 ⚠ - Rf_qnt⚠
- Rf_
qpois ⚠ - Rf_
qsignrank ⚠ - Rf_qt⚠
- Rf_
qtukey ⚠ - Rf_
qunif ⚠ - Rf_
qweibull ⚠ - Rf_
qwilcox ⚠ - Rf_
rPsort ⚠ - Rf_
rbeta ⚠ - Rf_
rbinom ⚠ - Rf_
rcauchy ⚠ - Rf_
rchisq ⚠ - Rf_
reEnc ⚠ - Rf_
reEnc3 ⚠ - Rf_
revsort ⚠ - Rf_rexp⚠
- Rf_rf⚠
- Rf_
rgamma ⚠ - Rf_
rgeom ⚠ - Rf_
rhyper ⚠ - Rf_
rlnorm ⚠ - Rf_
rlogis ⚠ - Rf_
rmultinom ⚠ - Multinomial Distribution
- Rf_
rnbeta ⚠ - Rf_
rnbinom ⚠ - Rf_
rnbinom_ ⚠mu - Rf_
rnchisq ⚠ - Rf_
rnorm ⚠ - Rf_
rpois ⚠ - Rf_
rsignrank ⚠ - Rf_rt⚠
- Rf_
runif ⚠ - Rf_
rweibull ⚠ - Rf_
rwilcox ⚠ - Rf_
select ⚠Device - Make the specified device (specified by number) the current device
- Rf_
setAttrib ⚠ - Rf_
setI ⚠Vector - Non-API, attribute_hidden and no longer used. Will be removed in R 4.5.0.
- Rf_
setR ⚠Vector - Rf_
setVar ⚠ - Rf_
shallow_ ⚠duplicate - Rf_sign⚠
- Rf_
str2type ⚠ - Rf_
string ⚠Position Tr - Rf_
substitute ⚠ - Rf_
tetragamma ⚠ - Rf_
topenv ⚠ - Rf_
translate ⚠Char - Rf_
translate ⚠CharUT F8 - Rf_
trigamma ⚠ - Rf_
type2char ⚠ - Rf_
type2rstr ⚠ - Rf_
type2str ⚠ - Rf_
type2str_ ⚠nowarn - Rf_
ucstoutf8 ⚠ - Translates Unicode point to UTF-8
- Rf_
unprotect ⚠ - Rf_
unprotect_ ⚠ptr - Rf_
utf8 ⚠ToLatin1 Adobe Symbol2utf8 - Rf_
utf8 ⚠Toutf8 NoPUA - Rf_
utf8to ⚠Adobe Symbol - Rf_
warning ⚠ - Rf_
warningcall ⚠ - Rf_
warningcall_ ⚠immediate - Rf_
xlength ⚠ - Rf_
xlengthgets ⚠ - Rprintf⚠
- Rtanpi⚠
- Rvprintf⚠
- SETCA
D4R ⚠ - SETCADDDR⚠
- SETCADDR⚠
- SETCADR⚠
- SETCAR⚠
- SETCDR⚠
- SET_
ATTRIB ⚠ - SET_
COMPLEX_ ⚠ELT - SET_
INTEGER_ ⚠ELT - SET_
LOGICAL_ ⚠ELT - SET_
OBJECT ⚠ - SET_
RAW_ ⚠ELT - SET_
REAL_ ⚠ELT - SET_
RSTEP ⚠ - SET_
RTRACE ⚠ - SET_
STRING_ ⚠ELT - SET_TAG⚠
- SET_
VECTOR_ ⚠ELT - SHALLOW_
DUPLICATE_ ⚠ATTRIB - STRING_
ELT ⚠ - STRING_
IS_ ⚠SORTED - STRING_
NO_ ⚠NA - STRING_
PTR_ ⚠RO - S_alloc⚠
- S_
realloc ⚠ - TAG⚠
- TYPEOF⚠
- UNIMPLEMENTED⚠
- VECTOR_
ELT ⚠ - SEXP (STRING_ELT)(SEXP x, R_xlen_t i);
- Wrong
ArgCount ⚠ - XLENGTH⚠
- cgmin⚠
- cospi⚠
- exp_
rand ⚠ - find
Interval ⚠ - ../../appl/interv.c: first also in Applic.h
- find
Interval2 ⚠ - find_
interv_ ⚠vec - not API, entry point no longer exists
- lbfgsb⚠
- nmmin⚠
- norm_
rand ⚠ - Random Number Generators
- optif9⚠
- Also used in packages nlme, pcaPP
- rsort_
with_ ⚠index - samin⚠
- setup_
Rmainloop ⚠ - setup_
term_ ⚠ui - signrank_
free ⚠ - sinpi⚠
- tanpi⚠
- unif_
rand ⚠ - user_
norm_ ⚠rand - user_
unif_ ⚠init - user_
unif_ ⚠nseed - user_
unif_ ⚠rand - user_
unif_ ⚠seedloc - vmaxget⚠
- vmaxset⚠
- vmmin⚠
- wilcox_
free ⚠
Type Aliases§
- DL_FUNC
- Called with a variable argument set after casting to a compatible function pointer.
- DevDesc
- ——— New (in 1.4.0) device driver structure ——— NOTES:
- DllInfo
- FILE
- GEDev
Desc - GEcallback
- Int32
- PROTECT_
INDEX - We sometimes need to coerce a protected value and place the new coerced value under protection. For these cases PROTECT_WITH_INDEX saves an index of the protection location that can be used to replace the protected value using REPROTECT.
- R_
CFinalizer_ t - Finalization interface
- R_
External Method Def - R_
Fortran Method Def - These are very similar to those in Rdynpriv.h, but we maintain them separately to give us more freedom to do some computations on the internal versions that are derived from these definitions.
- R_
Native Primitive ArgType - R_
Registered Native Symbol - R_
allocator_ t - R_
altcomplex_ Elt_ method_ t - R_
altcomplex_ Get_ region_ method_ t - R_
altinteger_ Elt_ method_ t - R_
altinteger_ Get_ region_ method_ t - R_
altinteger_ Is_ sorted_ method_ t - R_
altinteger_ Max_ method_ t - R_
altinteger_ Min_ method_ t - R_
altinteger_ No_ NA_ method_ t - R_
altinteger_ Sum_ method_ t - R_
altlist_ Elt_ method_ t - R_
altlist_ Set_ elt_ method_ t - R_
altlogical_ Elt_ method_ t - R_
altlogical_ Get_ region_ method_ t - R_
altlogical_ Is_ sorted_ method_ t - R_
altlogical_ No_ NA_ method_ t - R_
altlogical_ Sum_ method_ t - R_
altraw_ Elt_ method_ t - R_
altraw_ Get_ region_ method_ t - R_
altreal_ Elt_ method_ t - R_
altreal_ Get_ region_ method_ t - R_
altreal_ Is_ sorted_ method_ t - R_
altreal_ Max_ method_ t - R_
altreal_ Min_ method_ t - R_
altreal_ No_ NA_ method_ t - R_
altreal_ Sum_ method_ t - R_
altrep_ Coerce_ method_ t - R_
altrep_ DuplicateEX_ method_ t - R_
altrep_ Duplicate_ method_ t - R_
altrep_ Inspect_ method_ t - R_
altrep_ Length_ method_ t - R_
altrep_ Serialized_ state_ method_ t - R_
altrep_ UnserializeEX_ method_ t - R_
altrep_ Unserialize_ method_ t - R_
altstring_ Elt_ method_ t - R_
altstring_ Is_ sorted_ method_ t - R_
altstring_ No_ NA_ method_ t - R_
altstring_ Set_ elt_ method_ t - R_
altvec_ Dataptr_ method_ t - R_
altvec_ Dataptr_ or_ null_ method_ t - R_
altvec_ Extract_ subset_ method_ t - R_
inpstream_ t - R_len_t
- type for length of (standard, not long) vectors etc
- R_
outpstream_ t - R_
pstream_ data_ t - R_
xlen_ t - R_xlen_t is defined as int on 32-bit platforms, and that confuses Rust. Keeping it always as ptrdiff_t works fine even on 32-bit.
- Rbyte
- SEXP
- __
builtin_ va_ list - __
gnuc_ va_ list - d2fcn_p
- type of pointer to the hessian functions
- fcn_p
- type of pointer to the target and gradient functions
- integr_
fn - ../../appl/integrate.c
- optimfn
- main/optim.c
- optimgr
- pDev
Desc - pGEDev
Desc - pGEcontext
- rcolor
- va_list