rendered paste body-- Adjust require() to handle both unix and windows file seperators
require("Ace2/AceLibrary/AceLibrary.lua")
require("Ace2/AceOO-2.0/AceOO-2.0.lua")
local AceOO = AceLibrary("AceOO-2.0")
local Class = AceOO.Class
local Mixin = AceOO.Mixin
local myMixin = Mixin { "Test" }
function myMixin:Test()
return "Test-1"
end
AceLibrary:Register(myMixin, "myMixin", 1, myMixin.activate)
myMixin = nil
local myClass = Class("myMixin")
AceLibrary:Register(myClass, "myClass", 1)
myClass = nil
local instance = AceLibrary("myClass"):new()
assert(instance:Test() == "Test-1")
local myMixin = Mixin { "Test" }
function myMixin:Test()
return "Test-2"
end
AceLibrary:Register(myMixin, "myMixin", 2, myMixin.activate)
assert(instance:Test() == "Test-2")
assert(AceLibrary("myClass"):new():Test() == "Test-2")