Mercurial > pub > dyncall > bindings
view R/rdyncall/demo/expat.R @ 63:9b6cdffd30dd
- further fixes of inccorect overflow errors for int (and long on LLP64 systems)
* prev commit had bugs
* added overflow tests for also int, long, long long (for both, lp64 and llp64)
- while at it, fixing a reference leak when not using python with utf8 caching
author | Tassilo Philipp |
---|---|
date | Sun, 19 May 2024 15:33:18 +0200 |
parents | 0cfcc391201f |
children |
line wrap: on
line source
# Package: rdyncall # File: demo/expat.R # Description: Parsing XML using expat and callbacks dynport(expat) parser <- XML_ParserCreate(NULL) onXMLStartTag <- function(user,tag,attr) { # as.character( as.cstrptrarray(attr) ) cat("Start tag:", tag, "\n") } onXMLEndTag <- function(user,tag) { cat("End tag:",tag, "\n") } cb.onstart <- new.callback("pZp)v", onXMLStartTag ) cb.onstop <- new.callback("pZ)v", onXMLEndTag ) XML_SetElementHandler( parser, cb.onstart, cb.onstop ) text <- " <hello> <world> </world> </hello> " XML_Parse( parser, text, nchar(text), 1)