Data structure utilities for Corona, part of the Cipr project.
Includes:
Installation is done with cipr
cipr install git://github.com/six8/cipr.struct.git
Some examples. See source for full functionality.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | local cipr = require 'cipr' local Set = cipr.import 'cipr.struct.Set' local fruit = Set:new({}) fruit:add('orange') fruit:add('pear') fruit:add('apple') assert(fruit:contains('apple')) local cart = Set:new({'apple', 'plum', 'grape'}) assert(cart:union(fruit):size() == 5) assert(cart:intersection(fruit):size() == 1) |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | local cipr = require 'cipr' local Vector2D = cipr.import 'cipr.struct.Vector2D' local vec1 = Vector2D:new(10, 10) local vec2 = Vector2D:new(10, 10) assert(vec1:equals(vec2)) -- Distance assert(vec1:dist(vec2) == 0) -- Angle assert(vec1:angle({x = 0, y = 0}) == -45) |