]> git.lizzy.rs Git - metalua.git/blob - src/samples/h_test2.mlua
Merge remote branch 'origin/master'
[metalua.git] / src / samples / h_test2.mlua
1 -{ block:
2    -{ extension 'log' }
3    -{ extension 'H' }
4
5    require 'metalua.dollar'
6
7    local H = H:new()
8    print("initial H.alpha", H.alpha)
9
10
11    function dollar.Q(cond, iftrue, iffalse)
12       local b = +{ block: 
13                    local v 
14                    if -{!cond} then v = -{!iftrue}
15                    else v = -{!iffalse} end }
16       local r = `Stat{ b, +{v} }
17       H(r)
18       return r
19    end 
20
21    $log(H)
22    return H.alpha }
23
24 x=1 ; y=$Q(x==1, 'one', 'two') ; print(y)
25 x=2 ; y=$Q(x==1, 'one', 'two') ; print(y)