From 57d22478d15f927907a83cd87ad05fc1c44077bd Mon Sep 17 00:00:00 2001 From: Matthew Butterick Date: Tue, 12 Mar 2019 01:12:09 -0700 Subject: [PATCH] watch --- xenomorph/xenomorph/struct.rkt | 3 ++- xenomorph/xenomorph/versioned-struct.rkt | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/xenomorph/xenomorph/struct.rkt b/xenomorph/xenomorph/struct.rkt index 9f2ebeb7..e045062d 100644 --- a/xenomorph/xenomorph/struct.rkt +++ b/xenomorph/xenomorph/struct.rkt @@ -1,4 +1,4 @@ -#lang racket/base +#lang debug racket/base (require racket/dict racket/class racket/sequence @@ -66,6 +66,7 @@ https://github.com/mbutterick/restructure/blob/master/src/Struct.coffee x:pointer-size-key 0)) (hash-set! parent x:pointer-offset-key (+ (pos port) (size field-data parent #f))) (for ([(key type) (in-dict @fields)]) + #R (list key 'in-struct) (send type encode (dict-ref field-data key) port parent)) (for ([ptr (in-list (hash-ref parent x:pointers-key))]) (match ptr diff --git a/xenomorph/xenomorph/versioned-struct.rkt b/xenomorph/xenomorph/versioned-struct.rkt index 6a29a4bd..758c376c 100644 --- a/xenomorph/xenomorph/versioned-struct.rkt +++ b/xenomorph/xenomorph/versioned-struct.rkt @@ -80,6 +80,7 @@ https://github.com/mbutterick/restructure/blob/master/src/VersionedStruct.coffee (unless (andmap (λ (key) (member key (dict-keys field-data))) (dict-keys fields)) (raise-argument-error 'x:versioned-struct-encode (format "hash that contains superset of xversioned-struct keys: ~a" (dict-keys fields)) (dict-keys field-data))) (for ([(key type) (in-dict fields)]) + #R (list key 'in-verseioned-struct) (send type encode (dict-ref field-data key) port parent)) (for ([ptr (in-list (dict-ref parent x:pointers-key))]) (match ptr