Package: rdyncall 0.9.0.9000

rdyncall: Improved Foreign Function Interface and Dynamic Bindings to C Libraries

Provides a cross-platform framework for dynamic binding of C libraries using a flexible Foreign Function Interface ('FFI'). The FFI supports almost all fundamental C types, multiple calling conventions, symbolic access to foreign C 'struct'/'union' data types and wrapping of R functions as C callback function pointers. Dynamic bindings to shared C libraries are data-driven by cross-platform binding specification using a compact plain text format; an initial repository of bindings to a couple of common C libraries ('OpenGL', 'SDL2', 'Expat', 'glew', 'CUDA', 'OpenCL', 'ODE', 'R') comes with the package. The package includes a variety of technology demos and OS-specific notes for installation of shared libraries.

Authors:Daniel Adler <[email protected]>, Hongyuan Jia <[email protected]>

rdyncall_0.9.0.9000.tar.gz
rdyncall_0.9.0.9000.zip(r-4.4)rdyncall_0.9.0.9000.zip(r-4.3)
rdyncall_0.9.0.9000.tgz(r-4.4-x86_64)rdyncall_0.9.0.9000.tgz(r-4.4-arm64)rdyncall_0.9.0.9000.tgz(r-4.3-x86_64)rdyncall_0.9.0.9000.tgz(r-4.3-arm64)
rdyncall_0.9.0.9000.tar.gz(r-4.4-noble)
rdyncall.pdf |rdyncall.html
rdyncall/json (API)

# Install 'rdyncall' in R:
install.packages('rdyncall', repos = c('https://hongyuanjia.r-universe.dev', 'https://cloud.r-project.org'))

Bug tracker:https://github.com/hongyuanjia/rdyncall/issues

On CRAN:

3.84 score 6 stars 23 scripts 10 downloads 36 exports 0 dependencies

Last updated 2 years agofrom:f54bfd7786. Checks:4 OK, 3 WARNING. Indexed: yes.

TargetResultLatest binary
Doc / VignettesOKFeb 12 2025
R-4.4-win-x86_64WARNINGFeb 12 2025
R-4.4-mac-x86_64WARNINGFeb 12 2025
R-4.4-mac-aarch64WARNINGFeb 12 2025
R-4.3-win-x86_64OKFeb 12 2025
R-4.3-mac-x86_64OKFeb 12 2025
R-4.3-mac-aarch64OKFeb 12 2025

Exports:as.ctypeas.externalptras.floatrawccallbackcdatacstructcuniondynbinddyncalldyncall.cdecldyncall.defaultdyncall.fastcalldyncall.fastcall.gccdyncall.fastcall.msvcdyncall.stdcalldyncall.thiscalldyncall.thiscall.gccdyncall.thiscall.msvcdyncountdynfinddynlistdynloaddynpathdynportdynsymdynunloadfloatrawfloatraw2numericis.externalptris.nullptroffset_ptrpackptr2strstrarrayptrstrptrunpack

Dependencies:

Foreign Library Interface

Rendered fromFLI.Rnwusingutils::Sweaveon Feb 12 2025.

Last update: 2023-06-23
Started: 2023-01-02

Readme and manuals

Help Manual

Help pageTopics
Dynamic wrapping of R functions as C callbackscallback ccallback dyncallback
Binding C library functions via thin call wrappersdynbind
Foreign Function Interface with support for almost all C typescall signature dyncall dyncall.cdecl dyncall.default dyncall.fastcall dyncall.fastcall.gcc dyncall.fastcall.msvc dyncall.stdcall dyncall.thiscall dyncall.thiscall.gcc dyncall.thiscall.msvc signature type signature
Portable searching and loading of shared librariesdynfind
Loading of shared libraries and resolving of symbols (Alternative Framework)dyncount dynlist dynload dynpath dynsym dynunload
Dynamic R Bindings to standard and common C librariesdynport loadDynportNamespace
Handling of foreign C fundamental data typespack packing unpack
Improved Foreign Function Interface (FFI) and Dynamic Bindings to C Libraries (e.g. OpenGL)rdyncall-package rdyncall
rdyncall demos: Platform installation notes for required librariesrdyncall-demos
Allocation and handling of foreign C aggregate data types$.struct $<-.struct as.ctype cdata cstruct cunion print.struct struct
S3 class for run-time type information of foreign C data typesget_typeinfo type information typeinfo
Utility functions for working with foreign C data typesas.externalptr as.floatraw floatraw floatraw2numeric is.externalptr is.nullptr offset_ptr ptr2str strarrayptr strptr