X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fcode%2Ftarget-random.lisp;h=97acbf8ada59fc87b7287a6d5e2c912974b8b3f7;hb=67dc5cf478dfe5e3f517001febb9a8f7b922eacf;hp=aa87cadb9f68624ea0f2a45aad71b4fe814750b5;hpb=7646aefa188758e2892fea2ad02be4f29b3938f2;p=sbcl.git diff --git a/src/code/target-random.lisp b/src/code/target-random.lisp index aa87cad..97acbf8 100644 --- a/src/code/target-random.lisp +++ b/src/code/target-random.lisp @@ -21,6 +21,18 @@ (def!method make-load-form ((random-state random-state) &optional environment) (make-load-form-saving-slots random-state :environment environment)) +(def!method print-object ((state random-state) stream) + (if (and *print-readably* (not *read-eval*)) + (error 'print-not-readable :object state) + (format stream "#S(~S ~S #.~S)" + 'random-state + ':state + `(make-array 627 + :element-type + '(unsigned-byte 32) + :initial-contents + ',(coerce (random-state-state state) 'list))))) + ;;; The state is stored in a (simple-array (unsigned-byte 32) (627)) ;;; wrapped in a random-state structure: ;;;