www

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

commit dc449fae4d75723505d0c4af2318f1a71f9ba556
parent f615ae243bb146ca90072abbfc2d11cc19da49a1
Author: Georges Dupéron <georges.duperon@gmail.com>
Date:   Wed, 18 Jan 2017 04:45:04 +0100

Remove output, incomplete types should not be in the main graph type, as wrappers may add/remove fields in the incomplete type in the graph transform or creation code.

Diffstat:
Mgraph-info.hl.rkt | 7+++++--
Mgraph-type.hl.rkt | 4++--
Mtest/test-graph-type.rkt | 10+++++-----
3 files changed, 12 insertions(+), 9 deletions(-)

diff --git a/graph-info.hl.rkt b/graph-info.hl.rkt @@ -117,8 +117,11 @@ We define here the compile-time metadata describing a graph type. [field-order (listof identifier?)] [fields (hash/c symbol? field-info? #:immutable #t)] [promise-type identifier?] - [make-incomplete-type identifier?] - [incomplete-type identifier?]) + ;; Wrappers can mean that we have incomplete types with fewer + ;; fields than the final node type. + ;[make-incomplete-type identifier?] + ;[incomplete-type identifier?] + ) #:transparent #:methods gen:custom-write [(define write-proc (struct-printer 'node-info))] diff --git a/graph-type.hl.rkt b/graph-type.hl.rkt @@ -89,9 +89,9 @@ <field-info>) #'([fieldᵢⱼ τᵢⱼ] …)))) (check-remembered-node! #'(nodeᵢ fieldᵢⱼ …)) - (meta-struct-constructor + #;(meta-struct-constructor (check-remembered-tagged! #'(node-incompleteᵢ fieldᵢⱼ …))) - (check-remembered-tagged! #'(node-incompleteᵢ fieldᵢⱼ …)))] + #;(check-remembered-tagged! #'(node-incompleteᵢ fieldᵢⱼ …)))] @chunk[<field-info> (field-info #'τᵢⱼ)] diff --git a/test/test-graph-type.rkt b/test/test-graph-type.rkt @@ -15,7 +15,7 @@ #:invariant City.citizens._ ∈ City.streets._.houses._.owner #:invariant City.citizens._ ∋ City.streets._.houses._.owner) -(begin-for-syntax - (require racket/pretty) - (parameterize ([pretty-print-columns 188]) - (pretty-print (syntax-local-value #'g1)))) -\ No newline at end of file +#;(begin-for-syntax + (require racket/pretty) + (parameterize ([pretty-print-columns 188]) + (pretty-print (syntax-local-value #'g1)))) +\ No newline at end of file