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.
This commit is contained in:
parent
f615ae243b
commit
dc449fae4d
|
@ -117,8 +117,11 @@ We define here the compile-time metadata describing a graph type.
|
||||||
[field-order (listof identifier?)]
|
[field-order (listof identifier?)]
|
||||||
[fields (hash/c symbol? field-info? #:immutable #t)]
|
[fields (hash/c symbol? field-info? #:immutable #t)]
|
||||||
[promise-type identifier?]
|
[promise-type identifier?]
|
||||||
[make-incomplete-type identifier?]
|
;; Wrappers can mean that we have incomplete types with fewer
|
||||||
[incomplete-type identifier?])
|
;; fields than the final node type.
|
||||||
|
;[make-incomplete-type identifier?]
|
||||||
|
;[incomplete-type identifier?]
|
||||||
|
)
|
||||||
#:transparent
|
#:transparent
|
||||||
#:methods gen:custom-write
|
#:methods gen:custom-write
|
||||||
[(define write-proc (struct-printer 'node-info))]
|
[(define write-proc (struct-printer 'node-info))]
|
||||||
|
|
|
@ -89,9 +89,9 @@
|
||||||
<field-info>)
|
<field-info>)
|
||||||
#'([fieldᵢⱼ τᵢⱼ] …))))
|
#'([fieldᵢⱼ τᵢⱼ] …))))
|
||||||
(check-remembered-node! #'(nodeᵢ 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ᵢⱼ …)))]
|
#;(check-remembered-tagged! #'(node-incompleteᵢ fieldᵢⱼ …)))]
|
||||||
|
|
||||||
@chunk[<field-info>
|
@chunk[<field-info>
|
||||||
(field-info #'τᵢⱼ)]
|
(field-info #'τᵢⱼ)]
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
#:invariant City.citizens._ ∈ City.streets._.houses._.owner
|
#:invariant City.citizens._ ∈ City.streets._.houses._.owner
|
||||||
#:invariant City.citizens._ ∋ City.streets._.houses._.owner)
|
#:invariant City.citizens._ ∋ City.streets._.houses._.owner)
|
||||||
|
|
||||||
(begin-for-syntax
|
#;(begin-for-syntax
|
||||||
(require racket/pretty)
|
(require racket/pretty)
|
||||||
(parameterize ([pretty-print-columns 188])
|
(parameterize ([pretty-print-columns 188])
|
||||||
(pretty-print (syntax-local-value #'g1))))
|
(pretty-print (syntax-local-value #'g1))))
|
Loading…
Reference in New Issue
Block a user