Lines Matching +refs:parsed +refs:only
5 "parsed.rkt"
8 (provide (struct-out expanded+parsed)
9 (struct-out semi-parsed-define-values)
10 (struct-out semi-parsed-begin-for-syntax)
12 parsed-only
13 syntax-only)
18 (struct expanded+parsed (s parsed) #:authentic)
22 (struct semi-parsed-define-values (s syms ids rhs) #:authentic)
23 (struct semi-parsed-begin-for-syntax (s body) #:authentic)
26 (if (expanded+parsed? s)
27 (expanded+parsed-s s)
30 (define (parsed-only l)
32 #:when (or (parsed? i)
33 (expanded+parsed? i)
34 (semi-parsed-begin-for-syntax? i)))
36 [(expanded+parsed? i)
37 (expanded+parsed-parsed i)]
38 [(semi-parsed-begin-for-syntax? i)
39 (parsed-begin-for-syntax (semi-parsed-begin-for-syntax-s i)
40 (parsed-only (semi-parsed-begin-for-syntax-body i)))]
43 (define (syntax-only l)
46 (expanded+parsed? i)
47 (semi-parsed-begin-for-syntax? i)))
49 [(expanded+parsed? i) (expanded+parsed-s i)]
50 [(semi-parsed-begin-for-syntax? i)
52 ;; still have semi-parsed `begin-for-syntax`
53 (define s (semi-parsed-begin-for-syntax-s i))
54 (define nested-bodys (semi-parsed-begin-for-syntax-body i))
56 (rebuild s `(,(m 'begin-for-syntax) ,@(syntax-only nested-bodys)))]