Object serialization: Difference between revisions
Content added Content deleted
(→{{header|Racket}}: actual implementation added) |
|||
Line 1,530: | Line 1,530: | ||
<lang racket>(require racket/serialize)</lang> |
<lang racket>(require racket/serialize)</lang> |
||
The rest is covered by the Racket language. |
The rest is covered by the Racket language. |
||
(I have elided the paths in objects.dat -- you wouldn't be able to use them anyway) |
|||
<lang racket>#lang racket |
<lang racket>#lang racket |
||
Line 1,605: | Line 1,607: | ||
{{out}} |
{{out}} |
||
⚫ | |||
<pre>Language: racket [custom]; memory limit: 512 MB. |
|||
⚫ | |||
The cloned family: John + Jane -> Jack, Joan |
The cloned family: John + Jane -> Jack, Joan |
||
objects.dat contains ---- |
objects.dat contains ---- |
||
((3) 3 ((#"C:\\ |
((3) 3 ((#"C:\\[...]\\Serializable-Objects.rkt" . deserialize-info:person%) (#"C:\\[...]\\Serializable-Objects.rkt" . deserialize-info:nuclear-family%) (#"C:\\[...]\\Serializable-Objects.rkt" . deserialize-info:parent%)) 4 ((q . #(())) #&0 (0 (c (? . 0) c "Joan" c (c (? . 1)))) (c (? . 1) c (? . 2))) ((1 0 (c (? . 0) c "Jack" c (c (? . 2))))) (1 (c (? . 0) c (2 (c (v! (c (? . 0) q "John" ())) c (? . 3))) c (2 (c (v! (c (? . 0) q "Jane" ())) c (? . 3))) c (? . 3)))) |
||
------------------- |
------------------- |
||