Set = {}
Set.mt = {}
function Set.new (table)
local retable = {}
setmetatable(retable, Set.mt)
for i, v in ipairs(table) do retable[i] = v end
return retable
end
function Set.mt.__add(ad1,ad2)
local retable = {}
setmetatable(retable, Set.mt)
for i, v in ipairs(ad1) do retable[i] = v end
for i, v in ipairs(ad2) do
retable[table.getn(retable) + 1] = v
end
return retable
end
function Set.mt.__tostring(table)
for i, v in ipairs(table) do
print(v)
end
end
test1 = Set.new({1,2,8,10})
test2 = Set.new({3,4,5})
test3 = test1 + test2
print(test3)
Set.mt.__metatable = "not change"
print(getmetatable(test2))
setmetatable(s1, {})
Set.mt = {}
function Set.new (table)
local retable = {}
setmetatable(retable, Set.mt)
for i, v in ipairs(table) do retable[i] = v end
return retable
end
function Set.mt.__add(ad1,ad2)
local retable = {}
setmetatable(retable, Set.mt)
for i, v in ipairs(ad1) do retable[i] = v end
for i, v in ipairs(ad2) do
retable[table.getn(retable) + 1] = v
end
return retable
end
function Set.mt.__tostring(table)
for i, v in ipairs(table) do
print(v)
end
end
test1 = Set.new({1,2,8,10})
test2 = Set.new({3,4,5})
test3 = test1 + test2
print(test3)
Set.mt.__metatable = "not change"
print(getmetatable(test2))
setmetatable(s1, {})