28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
-
+
+
-
+
-
+
+
|
syntax/parse
pollen/setup))
(require pollen/tag
pollen/setup
racket/function
"tags-html.rkt"
"template-html.rkt")
"template-html.rkt"
"crystalize.rkt")
(provide (all-defined-out)
(all-from-out "template-html.rkt"))
(all-from-out "crystalize.rkt" "template-html.rkt"))
(module setup racket/base
(require syntax/modresolve)
(provide (all-defined-out))
(define poly-targets '(html))
(define cache-watchlist
(map resolve-module-path '("tags-html.rkt"
"template-html.rkt"
"dates.rkt"))))
"dates.rkt"
"crystalize.rkt"))))
;; Macro for defining tag functions that automatically branch based on the
;; current output format and the list of poly-targets in the setup module.
;;
(define-syntax (poly-branch-tag stx)
(syntax-parse stx
[(_ TAG:id)
|