| require("import") -- the import fn |
| import("template_inherit") -- import lib into global |
| ti=template_inherit --alias |
| |
| -- catching undefined variables |
| local env = _ENV -- Lua 5.2 |
| if not env then env = getfenv () end -- Lua 5.1 |
| setmetatable(env, {__index=function (t,i) error("undefined global variable `"..i.."'",2) end}) |
| |
| |
| fi = ti.FooInt() |
| assert(fi:blah() == "Foo") |
| assert(fi:foomethod() == "foomethod") |
| |
| bi = ti.BarInt() |
| assert(bi:blah() == "Bar") |
| assert(bi:foomethod() == "foomethod") |
| |
| assert(ti.invoke_blah_int(fi) == "Foo") |
| assert(ti.invoke_blah_int(bi) == "Bar") |
| |
| bd = ti.BarDouble() |
| success = pcall(ti.invoke_blah_int, bd) |
| assert(not success) |