| require("import") -- the import fn |
| import("nspace_extend") -- import lib |
| |
| -- catch "undefined" global 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}) |
| |
| ne = nspace_extend |
| |
| -- Inner1 |
| |
| -- Constructors |
| in1_clr1 = ne.Outer.Inner1.Color() |
| in1_clr2 = ne.Outer.Inner1.Color.create() |
| in1_clr3 = ne.Outer.Inner1.Color(in1_clr2) |
| |
| -- methods |
| in1_clr1:colorInstanceMethod(1.0) |
| ne.Outer.Inner1.Color.colorStaticMethod(2.0) |
| |
| -- Inner2 |
| |
| -- Constructors |
| in2_clr1 = ne.Outer.Inner2.Color() |
| in2_clr2 = ne.Outer.Inner2.Color.create() |
| in2_clr3 = ne.Outer.Inner2.Color(in2_clr2) |
| |
| assert(pcall(ne.Outer.Inner2.Color, in1_clr1) == false) |
| |
| -- methods |
| in2_clr1:colorInstanceMethod(1.0) |
| ne.Outer.Inner2.Color.colorStaticMethod(2.0) |
| |
| in2_clr3:colors(in1_clr1, in1_clr2, in2_clr2, in2_clr2, in2_clr3) |
| |
| assert(pcall(in2_clr3.colors, in2_clr3, |
| in2_clr1, in2_clr2, in1_clr2, in2_clr2, in2_clr3) == false) |
| |