2.10 Conversion to Picts
The
slideshow/pict-convert library defines a protocol for
values to convert themselves to picts. The protocol
is used by DrRacket’s interactions window, for example, to render
values that it prints
A property whose value should be a procedure matching the
contract (-> any/c pict?). The
procedure is called when a structure with the property is passed to
pict-convert; the argument to the procedure is the
structure, and the procedure’s result should be a pict.
A property whose value should be a predicate procedure
(i.e., matching the contract predicate/c).
If this property is not set, then it is assumed to be the function (λ (x) #t).
If this property is set, then this procedure is called by pict-convertible? to determine if this particular value is convertible (thereby supporting situations where some instances of a given struct are convertible to picts, but others are not).
procedure
(pict-convertible? v) → boolean?
v : any/c
Returns #t if v supports the conversion protocol
(by being a struct with the prop:pict-convertible property)
and #f otherwise.
procedure
(pict-convert v) → pict?
v : pict-convertible?
Requests a data conversion from v to a pict.