Mercurial > pub > dyncall > bindings
view lua/luadyncall/test/test_smartptr.lua @ 46:c21d1c2c84e1
- removed pydc.py wrapper overhead (which only called pydcext.so functions, directly, anyways)
* implies renaming pydcext.* to pydc.*
* while at it, iterate directly over args that are passed in (before we did extract fptr, sig and a tuple for the args and iterated over latter afterwards); we might have a tiny perf improvement now
- added type stub as package_data
author | Tassilo Philipp |
---|---|
date | Fri, 13 Nov 2020 14:10:31 +0100 |
parents | 0cfcc391201f |
children |
line wrap: on
line source
require "smartptr" -- test tolightuserdata x = smartptr.tolightuserdata(0xCAFEbabe) print(x) -- test newsmartptr and finalizer function finalizer(x) print("finalizer:"..tostring(x) ) end y = smartptr.new(x, finalizer) print("dump smartptr : ".. tostring(y) ) print("dump address : " .. tostring(y())) y = nil -- should print FINALIZER collectgarbage("collect") -- test setfinalizer y = smartptr.new( smartptr.tolightuserdata(0xdeadc0de), finalizer) print("smartptr : ".. tostring(y) ) print("address : " .. tostring(y())) function newfinalizer(x) print("newfinalizer:"..tostring(x)) end smartptr.setfinalizer(y, newfinalizer) y = nil