generic-syntax-expanders/private/doc-util.rkt
2016-07-30 14:38:56 -07:00

33 lines
922 B
Racket

#lang at-exp racket/base
(provide (for-label (all-from-out generic-syntax-expanders
racket/base
racket/contract))
defpredicate
generic-syntax-examples
source-code)
(require (for-label generic-syntax-expanders
racket/base
racket/contract)
scribble/examples
scribble/manual
scribble/text)
(define requirements
'(generic-syntax-expanders))
(define (make-eval)
(make-base-eval #:lang 'racket/base
(cons 'require requirements)))
(define-syntax-rule (generic-syntax-examples example ...)
(examples #:eval (make-eval) example ...))
(define-syntax-rule (defpredicate id pre-flow ...)
(defthing #:kind "procedure" id predicate/c pre-flow ...))
(define (source-code dest-url)
@begin/text{Source code is available at @url[dest-url]})