Mercurial > pub > dyncall > bindings
view R/rdc/demo/malloc.R @ 56:16151547265e
made callback example python 2 compatible, and added some randomness to numbers to sort
author | Tassilo Philipp |
---|---|
date | Tue, 02 Feb 2021 21:07:41 +0100 |
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")