From c7fd8ed5503d7c3f2a2745be3687dee105673282 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Georges=20Dup=C3=A9ron?= Date: Wed, 31 Aug 2016 22:24:30 +0200 Subject: [PATCH] Attempt to get arrows drawn from a mixin's declaration to its (~no-order (~mixin m)). Not enough, it still doesn't work. --- private/mixin.rkt | 7 +++++-- private/no-order.rkt | 5 +++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/private/mixin.rkt b/private/mixin.rkt index 2c2f312..7b6834a 100644 --- a/private/mixin.rkt +++ b/private/mixin.rkt @@ -1,11 +1,14 @@ #lang racket (require "no-order.rkt" - (for-syntax syntax/parse)) + (for-syntax syntax/parse + racket/syntax)) (provide ~mixin) (define-eh-mixin-expander ~mixin (syntax-parser [(_ (~var mixin (static eh-mixin-expander? "an eh-mixin expander"))) - #'(mixin)])) \ No newline at end of file + (with-disappeared-uses + (record-disappeared-uses #'mixin) + #'(mixin))])) \ No newline at end of file diff --git a/private/no-order.rkt b/private/no-order.rkt index 019f8b0..f7227dc 100644 --- a/private/no-order.rkt +++ b/private/no-order.rkt @@ -60,7 +60,8 @@ (parameterize ([eh-post-accumulate add-to-post!] [eh-post-group add-to-post-groups!] [clause-counter increment-counter]) - (inline-or (expand-all-eh-mixin-expanders #'(~or pat ...))))) + ;(inline-or + (expand-all-eh-mixin-expanders #'(~or pat ...)))) (define post-group-bindings (for/list ([group (group-by car post-groups-acc @@ -75,7 +76,7 @@ #`[name (f . #,(map (λ (i) #`(attribute #,(third i))) group))])) #`(~delimit-cut - (~and (~seq (~or . #,alts) (... ...)) + (~and (~seq #,alts (... ...)) ;;(~or . #,alts) ~! (~bind #,@post-group-bindings) #,@post-acc))))]))))