Blame


1 2c02675e 2022-12-14 op {!
2 2c02675e 2022-12-14 op #include <sys/queue.h>
3 2c02675e 2022-12-14 op #include <string.h>
4 2c02675e 2022-12-14 op #include "lists.h"
5 2c02675e 2022-12-14 op #include "tmpl.h"
6 2c02675e 2022-12-14 op
7 2c02675e 2022-12-14 op int list(struct template *, struct tailhead *);
8 2c02675e 2022-12-14 op int base(struct template *, struct tailhead *);
9 2c02675e 2022-12-14 op
10 2c02675e 2022-12-14 op !}
11 2c02675e 2022-12-14 op
12 2c02675e 2022-12-14 op {{ define base(struct template *tp, struct tailhead *head) }}
13 2c02675e 2022-12-14 op <!doctype html>
14 2c02675e 2022-12-14 op <html>
15 2c02675e 2022-12-14 op <body>
16 2c02675e 2022-12-14 op {{ render list(tp, head) }}
17 2c02675e 2022-12-14 op </body>
18 2c02675e 2022-12-14 op </html>
19 2c02675e 2022-12-14 op {{ end }}
20 2c02675e 2022-12-14 op
21 2c02675e 2022-12-14 op {{ define list(struct template *tp, struct tailhead *head) }}
22 2c02675e 2022-12-14 op {!
23 2c02675e 2022-12-14 op struct entry *np;
24 2c02675e 2022-12-14 op int i;
25 2c02675e 2022-12-14 op !}
26 2c02675e 2022-12-14 op {{ if !TAILQ_EMPTY(head) }}
27 2c02675e 2022-12-14 op <p>items:</p>
28 2c02675e 2022-12-14 op <ul>
29 2c02675e 2022-12-14 op {{ tailq-foreach np head entries }}
30 2c02675e 2022-12-14 op <li>{{ np->text }}</li>
31 2c02675e 2022-12-14 op {{ end }}
32 2c02675e 2022-12-14 op </ul>
33 2c02675e 2022-12-14 op {{ else }}
34 2c02675e 2022-12-14 op <p>no items</p>
35 2c02675e 2022-12-14 op {{ end }}
36 2c02675e 2022-12-14 op
37 2c02675e 2022-12-14 op <p>
38 2c02675e 2022-12-14 op {{ for i = 0; i < 3; ++i }}
39 2c02675e 2022-12-14 op hello{{ " " }}
40 2c02675e 2022-12-14 op {{ end }}
41 2c02675e 2022-12-14 op world!
42 2c02675e 2022-12-14 op </p>
43 2c02675e 2022-12-14 op {{ end }}