40 lines
1.6 KiB
Racket
40 lines
1.6 KiB
Racket
#lang scribble/doc
|
|
@(require "common.rkt"
|
|
(for-label mzlib/serialize))
|
|
|
|
@(begin
|
|
(define-syntax-rule (bind id id2)
|
|
(begin
|
|
(require (for-label racket/serialize))
|
|
(define id (racket define-serializable-struct))
|
|
(define id2 (racket define-serializable-struct/versions))))
|
|
(bind racket-define-serializable-struct
|
|
racket-define-serializable-struct/versions))
|
|
|
|
@mzlib[#:mode title serialize]
|
|
|
|
@deprecated[@racketmodname[racket/serialize]]{}
|
|
|
|
The @racketmodname[mzlib/serialize] library provides the same bindings
|
|
as @racketmodname[racket/serialize], except that
|
|
@racket[define-serializable-struct] and
|
|
@racket[define-serializable-struct/versions] are based on the syntax
|
|
of @racket[define-struct] from @racketmodname[mzscheme].
|
|
|
|
@deftogether[(
|
|
@defform[(define-serializable-struct id-maybe-super (field-id ...) maybe-inspector-expr)]
|
|
@defform/subs[(define-serializable-struct/versions id-maybe-super vers-num (field-id ...)
|
|
(other-version-clause ...)
|
|
maybe-inspector-expr)
|
|
([id-maybe-super id
|
|
(id super-id)]
|
|
[maybe-inspector-expr code:blank
|
|
inspector-expr]
|
|
[other-version-clause (other-vers make-proc-expr
|
|
cycle-make-proc-expr)])]
|
|
)]{
|
|
|
|
Like @racket-define-serializable-struct and
|
|
@racket-define-serializable-struct/versions, but with the syntax of
|
|
closer to @racket[define-struct] of @racketmodname[mzscheme].}
|