File: lp-include.rkt

package info (click to toggle)
racket 7.2%2Bdfsg1-2
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 125,432 kB
  • sloc: ansic: 258,980; pascal: 59,975; sh: 33,650; asm: 13,558; lisp: 7,124; makefile: 3,329; cpp: 2,889; exp: 499; python: 274; xml: 11
file content (20 lines) | stat: -rw-r--r-- 581 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#lang scheme/base

(require scheme/include (for-syntax scheme/base)
          (only-in scribble/private/lp chunk CHUNK)
          scribble/manual)

(provide lp-include)

(define-syntax (module stx)
  (syntax-case stx (#%module-begin)
    [(module name base (#%module-begin body ...))
     #'(begin body ...)]
    [(module name base body ...)
     (raise-syntax-error #f "missing #%module-begin" stx)]))

(define-syntax (lp-include stx)
  (syntax-case stx ()
    [(_ name)
     (with-syntax ([there (datum->syntax stx 'there)])
       #'(include-at/relative-to here there name))]))