/tags/rel-1-3-26/SWIG/Examples/test-suite/lua/exception_order_runme.lua
Lua | 30 lines | 27 code | 1 blank | 2 comment | 0 complexity | 6545d3e61ba9c7ba32fbf471dad9b594 MD5 | raw file
Possible License(s): LGPL-2.1, Cube, GPL-3.0, 0BSD, GPL-2.0
- -- demo of lua swig capacilities (operator overloading)
- require("import") -- the import fn
- import("exception_order") -- import lib into global
- eo=exception_order --alias
- -- catching undefined variables
- setmetatable(getfenv(),{__index=function (t,i) error("undefined global variable `"..i.."'",2) end})
- a = eo.A()
- function try1()
- a:foo()
- end
- ok,ex=pcall(try1)
- assert(ok==false and swig_type(ex)==swig_type(eo.E1()))
- function try2()
- a:bar()
- end
- ok,ex=pcall(try2)
- assert(ok==false and swig_type(ex)==swig_type(eo.E2()))
- function try3()
- a:foobar()
- end
- ok,ex=pcall(try3)
- assert(ok==false and type(ex)=="string")
- -- the SWIG_exception is just an error string