diff --git a/pollen/private/ts.rktd b/pollen/private/ts.rktd index 56b39bc..324f9b3 100644 --- a/pollen/private/ts.rktd +++ b/pollen/private/ts.rktd @@ -1 +1 @@ -1595185366 +1595187053 diff --git a/pollen/scribblings/mb-tools.rkt b/pollen/scribblings/mb-tools.rkt index fa9af5d..1683043 100644 --- a/pollen/scribblings/mb-tools.rkt +++ b/pollen/scribblings/mb-tools.rkt @@ -58,20 +58,6 @@ (define-runtime-path id name) (image id xs ...)))])) -(define-syntax (defoverridable stx) - (syntax-case stx () - [(_ name predicate? desc ...) - (with-syntax* ([default-name (format-id #'here "default-~a" #'name)] - [value (let ([v (syntax-local-eval #'default-name)]) - (cond - [(and (list? v) (andmap symbol? v) (> (length v) 5)) #`'#,'(see below)] - [(or (symbol? v) (list? v)) #`'#,v] - [(procedure? v) '(λ (path) #f)] - [else v]))] - [setup:name (format-id stx "setup:~a" #'name)]) - #`(deftogether ((defproc (setup:name) predicate?) - (defthing default-name predicate? #:value value)) - desc ...))])) (define (val . args) (racketvalfont (element 'tt (map ~v args)))) diff --git a/pollen/scribblings/setup.scrbl b/pollen/scribblings/setup.scrbl index e658b22..3180c37 100644 --- a/pollen/scribblings/setup.scrbl +++ b/pollen/scribblings/setup.scrbl @@ -5,6 +5,22 @@ @(define my-eval (make-base-eval)) @(my-eval `(require pollen pollen/setup)) +@(require (for-syntax racket/base racket/syntax pollen/setup)) +@(define-syntax (defoverridable stx) + (syntax-case stx () + [(_ name predicate? desc ...) + (with-syntax* ([default-name (format-id #'here "default-~a" #'name)] + [value (let ([v (syntax-local-eval #'default-name)]) + (cond + [(and (list? v) (andmap symbol? v) (> (length v) 5)) #`'#,'(see below)] + [(or (symbol? v) (list? v)) #`'#,v] + [(procedure? v) '(λ (path) #f)] + [else v]))] + [setup:name (format-id stx "setup:~a" #'name)]) + #`(deftogether ((defproc (setup:name) predicate?) + (defthing default-name predicate? #:value value)) + desc ...))])) + @title{Setup} @defmodule[pollen/setup]