Skip to content

Latest commit

History

15 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

lua-clasp

Tiny Lua class libary

Usage

Basic class

class=require"clasp"Vector=class {
isVector=true; -- static valuesinit=function(self, x, y) -- initializer functionself.x=xself.y=yend;
}
a=Vector(10, 10)
print('Vector:', a.x, a.y, a.isVector) -- "Vector: 10 10 true"

Inheritance

Vector3=Vector:extend {
init=function(self, x, y, z) -- function overridingVector.init(self, x, y) -- superclass method callself.z=zend;
}
b=Vector3(1, 2, 3)
print('Vector3:', b.x, b.y, b.z, b.isVector) -- "Vector3: 1 2 3 true"

Metamethods

Point=class {
init=function(self, x, y)
self.x=xself.y=yend;
__= { -- metamethod tabletostring=function(self)
return'Point('..tostring(self.x)..', '..tostring(self.y)..')'end;
};
}
c=Point(15, 25)
print(c) -- "Point(15, 25)"

About

tiny lua class libary

Resources

Stars

30 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors

Languages