This PR changes script and script instances to be structs, to maintain a more consistent behavior regarding the call of property getters and setters in __index and __newindex metamethods (#5).
To bypass getters and setters, use rawget and rawset.
It also:
Adds mapping for Server platform, using the linux_x86_64 build. This is necessary to run the automated tests in CI.
Adds debugger.lua submodule to trigger breakpoints when automated tests fail
Fixes Array/Pool*Array__eq metamethod to not raise when comparing against primitive Lua values
Fixes support false as a default value for properties
Changes Object.call to raise in case of errors, instead of failing silently. Use Object.pcall to protect calls instead.
This PR changes script and script instances to be structs, to maintain a more consistent behavior regarding the call of property getters and setters in
__index
and__newindex
metamethods (#5). To bypass getters and setters, userawget
andrawset
.It also:
Server
platform, using thelinux_x86_64
build. This is necessary to run the automated tests in CI.Array
/Pool*Array
__eq
metamethod to not raise when comparing against primitive Lua valuesfalse
as a default value for propertiesObject.call
to raise in case of errors, instead of failing silently. UseObject.pcall
to protect calls instead.