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:
24
samples/Terra/forlist.t
Normal file
24
samples/Terra/forlist.t
Normal file
@@ -0,0 +1,24 @@
|
||||
|
||||
|
||||
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 a = 0
|
||||
for i in Range {0,10} do
|
||||
a = a + i
|
||||
end
|
||||
return a
|
||||
end
|
||||
|
||||
assert(foo() == 10*9/2)
|
||||
Reference in New Issue
Block a user