www

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

commit c7fd8ed5503d7c3f2a2745be3687dee105673282
parent 8ef335bcd4db8818a3aaf7790fe82d9386bf3d08
Author: Georges Dupéron <georges.duperon@gmail.com>
Date:   Wed, 31 Aug 2016 22:24:30 +0200

Attempt to get arrows drawn from a mixin's declaration to its (~no-order (~mixin m)). Not enough, it still doesn't work.

Diffstat:
Mprivate/mixin.rkt | 9++++++---
Mprivate/no-order.rkt | 5+++--
2 files changed, 9 insertions(+), 5 deletions(-)

diff --git 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 @@ -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))))]))))