Package: rdyncall 0.10.0
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 specifications using a compact plain text format; the package includes a 'DynPort' binding specification for 'SDL3' generated from current headers with 'porter'. The package includes a variety of technology demos and OS-specific notes for installation of shared libraries. For the underlying methods and bundled 'DynCall' libraries, see Adler (2012) <doi:10.32614/RJ-2012-004> and Adler and Philipp (2008) <https://dyncall.org>.
Authors:
rdyncall_0.10.0.tar.gz
rdyncall_0.10.0.tar.gz(r-4.7-arm64)rdyncall_0.10.0.tar.gz(r-4.7-x86_64)rdyncall_0.10.0.tar.gz(r-4.6-arm64)rdyncall_0.10.0.tar.gz(r-4.6-x86_64)
manual.pdf |manual.html✨
DESCRIPTION |NEWS
card.svg |card.png
rdyncall/json (API)
| # Install 'rdyncall' in R: |
| install.packages('rdyncall', repos = c('https://cran.r-universe.dev', 'https://cloud.r-project.org')) |
Bug tracker:https://github.com/hongyuanjia/rdyncall/issues
Last updated from:8ff592f0a0. Checks:5 OK, 1 FAIL. Indexed: yes.
| Target | Result | Time | Files | Syslog |
|---|---|---|---|---|
| linux-devel-arm64 | OK | 136 | ||
| linux-devel-x86_64 | OK | 121 | ||
| source / vignettes | OK | 162 | ||
| linux-release-arm64 | OK | 141 | ||
| linux-release-x86_64 | OK | 121 | ||
| wasm-release | FAIL | 87 |
Exports:as.ctypeas.externalptras.floatrawcallback_is_activecallback_last_errorcallback_statusccallbackcdatacstructcuniondynbinddyncalldyncall_variadicdyncall.cdecldyncall.defaultdyncall.fastcalldyncall.fastcall.gccdyncall.fastcall.msvcdyncall.stdcalldyncall.thiscalldyncall.thiscall.gccdyncall.thiscall.msvcdyncountdynfinddynfind_explaindynlistdynloaddynpathdynportdynport_clear_libdynport_install_packagedynport_libdynport_load_intodynsymdynunloadfloatrawfloatraw2numericis.externalptris.nullptroffset_ptrpackptr2strstrarrayptrstrptrunpack
Dependencies:
Readme and manuals
Help Manual
| Help page | Topics |
|---|---|
| Dynamic wrapping of R functions as C callbacks | callback callback_is_active callback_last_error callback_status ccallback dyncallback print.callback_status |
| Allocation and handling of foreign C aggregate data types | $.struct $<-.struct as.ctype cdata cstruct cunion print.ctype print.struct |
| Binding C library functions via thin call wrappers | dynbind print.dynbind.report |
| Foreign Function Interface with support for almost all C types | call-signature dyncall dyncall.cdecl dyncall.default dyncall.fastcall dyncall.fastcall.gcc dyncall.fastcall.msvc dyncall.stdcall dyncall.thiscall dyncall.thiscall.gcc dyncall.thiscall.msvc dyncall_variadic type-signature |
| Portable searching and loading of shared libraries | dynfind dynfind_explain |
| Loading of shared libraries and resolving of symbols (Alternative Framework) | dyncount dynlist dynload dynpath dynsym dynunload |
| Dynamic R Bindings to standard and common C libraries | dynport dynport_clear_lib dynport_install_package dynport_lib dynport_load_into |
| Utility functions for working with foreign C data types | as.externalptr as.floatraw floatraw floatraw2numeric is.externalptr is.nullptr offset_ptr print.floatraw ptr2str strarrayptr strptr |
| Handling of foreign C fundamental data types | pack unpack |
| rdyncall demos: shared library notes | rdyncall-demos |
| S3 class for run-time type information of foreign C data types | get_typeinfo print.typeinfo type-information typeinfo |
