Mercurial > pub > dyncall > bindings
view R/rdc/demo/malloc.R @ 34:2682a627168c
- breaking changes:
* restrict 'Z' conversions to immutable types
* restrict 'p' to mutable types (and handles)
author | Tassilo Philipp |
---|---|
date | Sun, 12 Apr 2020 19:37:37 +0200 |
parents | 0cfcc391201f |
children |
line wrap: on
line source
# File: rdc/demo/malloc.R # Description: sample demo to get malloc/free functions if( .Platform$OS.type == "windows" ) { .windir <- paste(Sys.getenv("windir")[[1]],"\\system32\\",sep="") .libC <- paste(.windir,"msvcrt",sep="") } else { sysname <- Sys.info()[["sysname"]] if (sysname == "Darwin") { .libC <- "/usr/lib/libc.dylib" } else { .libC <- "/lib/libc.so.6" } } dyn.load(.libC) bind <- function(name, signature) { address <- getNativeSymbolInfo(name)$address assign(name, function(...) rdcCall(address,signature,...), parent.frame() ) } bind("malloc","i)p") bind("free","p)v")