summaryrefslogtreecommitdiff
path: root/Examples/test-suite/lua/smart_pointer_simple_runme.lua
blob: ca3a85161b5d91d04590ea943c5876e7f61be123 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
require("import")	-- the import fn
import("smart_pointer_simple")	-- import lib into global
sps=smart_pointer_simple --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})

foo1 = sps.Foo()
foo1.x = 5
assert(foo1.x == 5)
assert(foo1:getx() == 5)

bar1 = sps.Bar(foo1)
bar1.x = 3
assert(bar1.x == 3)
assert(bar1:getx() == 3)

bar1.x = 5
assert(bar1.x == 5)
assert(bar1:getx() == 5)