• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1[article Template 1.4
2    [quickbook 1.4]
3]
4
5[/ 1.4 uses dynamic scoping ]
6
7[template x static scoping]
8[template foo1[] [x]]
9[template foo2[x] [foo1]]
10[foo2 dynamic scoping]
11
12[/ In 1.4 template arguments are scoped at the point they are used]
13
14[template y new]
15[template foo3[a y] [a]]
16[foo3 [y] old]
17
18[/ 1.4 template arguments]
19
20[template binary[x y] {[x]-[y]}]
21[binary 1..2]     [/ {1-2} ]
22[binary 1 2]      [/ {1-2} ]
23[binary 1..2 3 4] [/ {1-2 3 4} ]
24[binary 1 2..3 4] [/ {1 2-3 4} ]
25[binary 1 2 3..4] [/ {1 2 3-4} ]
26[binary [1..2]    [/ {(1-2} but with a square bracket ]
27[binary 1.\.2..3] [/ {1..2-3} ]
28[binary 1.\.2 3]  [/ {1..2-3} ]
29
30[binary [binary 1 2..3] 4] [/ {[binary 1 2-3} 4] ]
31
32[template ternary[x y z] {[x]-[y]-[z]}]
33[ternary 1..2..3]  [/ {1-2-3} ]
34[ternary 1 2 3]    [/ {1-2-3} ]
35[ternary 1..2 3 4] [/ {1-2-3 4} ]
36[ternary 1 2..3 4] [/ {1 2-3-4} ]
37[ternary [1..2..3] [/ {(1-2-3} (but with a square bracket) ]
38
39[/----------------------------------- Escaped templates ]
40
41[section Escaped templates]
42
43[template raw_markup <thingbob>Not real boostbook</thingbob>]
44[template | <thingbob>Also not real boostbook</thingbob>]
45[template escaped1 [|] [`|]]
46[template escaped2 [x] [`x]]
47
48[`raw_markup]
49[`|]
50[escaped1 <thingbob>More fake boostbook</thingbob>]
51[escaped2 <thingbob>Final fake boostbook</thingbob>]
52
53[endsect]
54