mirror of
https://github.com/KevinMidboe/linguist.git
synced 2025-10-29 17:50:22 +00:00
samples: add Terra samples
source: https://github.com/zdevito/terra/tree/master/tests
This commit is contained in:
21
samples/Terra/forp.t
Normal file
21
samples/Terra/forp.t
Normal file
@@ -0,0 +1,21 @@
|
||||
struct Range {
|
||||
a : int;
|
||||
b : int;
|
||||
}
|
||||
Range.metamethods.__for = function(syms,iter,body)
|
||||
return syms, quote
|
||||
var it = iter
|
||||
for [syms[1]] = it.a,it.b do
|
||||
body
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
terra foo()
|
||||
var v = Range { 0, 3 }
|
||||
var vp = &v
|
||||
var i = 0
|
||||
for e in vp do i = i + e end
|
||||
return i
|
||||
end
|
||||
assert(3 == foo())
|
||||
Reference in New Issue
Block a user