]> gitweb.factorcode.org Git - factor.git/blob - basis/literals/literals-tests.factor
Use flags{ instead of flags all over the place
[factor.git] / basis / literals / literals-tests.factor
1 USING: accessors kernel literals math tools.test ;
2 IN: literals.tests
3
4 <<
5 : six-six-six ( -- a b c ) 6 6 6 ;
6 >>
7
8 : five ( -- a ) 5 ;
9 : seven-eleven ( -- b c ) 7 11 ;
10
11 [ { 5 } ] [ { $ five } ] unit-test
12 [ { 7 11 } ] [ { $ seven-eleven } ] unit-test
13 [ { 6 6 6 } ] [ { $ six-six-six } ] unit-test
14
15 [ { 6 6 6 7 } ] [ { $ six-six-six 7 } ] unit-test
16
17 [ { 8 8 8 } ] [ { $[ six-six-six [ 2 + ] tri@ ] } ] unit-test
18
19 [ { 0.5 2.0 } ] [ { $[ 1.0 2.0 / ] 2.0 } ] unit-test
20
21 [ { 1.0 { 0.5 1.5 } 4.0 } ] [ { 1.0 { $[ 1.0 2.0 / ] 1.5 } $[ 2.0 2.0 * ] } ] unit-test
22
23 CONSTANT: constant-a 3
24
25 [ { 3 10 "ftw" } ] [ ${ constant-a 10 "ftw" } ] unit-test
26
27 : sixty-nine ( -- a b ) 6 9 ;
28
29 [ { 6 9 } ] [ ${ sixty-nine } ] unit-test
30
31 CONSTANT: a 1
32 CONSTANT: b 2
33 ALIAS: c b
34 ALIAS: d c
35
36 CONSTANT: foo flags{ a b d }
37
38 [ 3 ] [ foo ] unit-test
39 [ 3 ] [ flags{ a b d } ] unit-test
40 \ foo def>> must-infer
41
42 [ 1 ] [ flags{ 1 } ] unit-test