Class
A homemade class system, designed to use metatables extensively and to be extremely dynamic.
Differences with moonscript’s builtin class:
getmetatable(instance)
instead of instance.__class
__call
is defined in their class.@variable:
definitions.MyClass = Class
__init: (arg) =>
self.value = arg.value
print: =>
print self.value
myInstance = MyClass value: 3.14
myInstance\print!
-- 3.14
-- Static class attributes.
Static = Class
__class: {
Foo: 42
}
print Static.Foo
-- 42
Argument | Type | Description |
---|---|---|
name | ||
def |