diff --git a/concord/components.lua b/concord/components.lua index e4116fd..d4d6482 100644 --- a/concord/components.lua +++ b/concord/components.lua @@ -8,23 +8,23 @@ local Type = require(PATH..".type") local Components = {} local try = function (name) - if type(name) ~= "string" then - return false, "ComponentsClass name is expected to be a string, got "..type(name)..")" - end + if type(name) ~= "string" then + return false, "ComponentsClass name is expected to be a string, got "..type(name)..")" + end - local value = rawget(Components, name) - if not value then - return false, "ComponentClass '"..name.."' does not exist / was not registered" - end + local value = rawget(Components, name) + if not value then + return false, "ComponentClass '"..name.."' does not exist / was not registered" + end - return true, value + return true, value end --- Returns true if the containter has the ComponentClass with the specified name -- @string name Name of the ComponentClass to check -- @treturn boolean function Components.has(name) - return rawget(Components, name) and true or false + return rawget(Components, name) and true or false end --- Returns true and the ComponentClass if one was registered with the specified name @@ -33,25 +33,25 @@ end -- @treturn boolean -- @treturn Component or error string function Components.try(name) - return try(name) + return try(name) end --- Returns the ComponentClass with the specified name -- @string name Name of the ComponentClass to get -- @treturn Component function Components.get(name) - local ok, value = try(name) + local ok, value = try(name) - if not ok then error(value, 2) end + if not ok then error(value, 2) end - return value + return value end return setmetatable(Components, { - __index = function(_, name) - local ok, value = try(name) + __index = function(_, name) + local ok, value = try(name) - if not ok then error(value, 2) end - - return value end + if not ok then error(value, 2) end + + return value end }) diff --git a/concord/pool.lua b/concord/pool.lua index e74227a..f1c80eb 100644 --- a/concord/pool.lua +++ b/concord/pool.lua @@ -72,7 +72,7 @@ function Pool:evaluate(e) local eligible = self:eligible(e) if not has and eligible then - self:add(e) + self:add(e, true) --Bypass the check cause we already checked elseif has and not eligible then self:remove(e) end