Matthew Flatt
fe1d9ee517
document/test optional argument of impersonator propertry accessor
...
An impersonator-property accessor accepts a failure argument
in the same was as a structure-type--property accessor.
2017-12-22 19:07:36 -07:00
dented42
167164b8a0
Fixed a typo ( #1907 )
...
Fixed a typo in the reference documentation for `impersonate-procedure*`.
2017-12-08 15:20:46 -05:00
Matthew Flatt
d1fa65ac92
doc correction for chaperone-of?
2017-07-23 08:21:28 -06:00
Vincent St-Amour
5f740ffcac
Fix typesetting of inpersonator-of docs.
2017-07-07 14:55:18 -05:00
Matthew Flatt
f43234e1cb
add prop:authentic
and (struct .... #:authentic ....)
...
An authentic structure type is one whose instances cannot be
impersonated or chaperoned. The intended use of `prop:authentic` is to
annotate a library-private data structure where impersonators are
never needed internally for the data structure, and the declaration
lets the compiler produce less code and fewer branches by omitting
impersonator support.
2017-05-12 12:40:57 -06:00
Vincent St-Amour
4ffd2fc1b8
Restore docs about impersonator-of? and immutable hash tables.
...
In the impersonate-hash docs, this time.
2017-04-30 13:44:49 -05:00
Vincent St-Amour
206ced8d47
Add examples for impersonator-of?.
2017-04-30 13:44:49 -05:00
Vincent St-Amour
d9b39eac1f
Add back desciption of impersonator-of?'s behavior on impersonator subparts.
2017-04-30 13:44:49 -05:00
Daniel Feltey
e29dba115b
New impersonator-of? docs
2017-04-30 13:44:49 -05:00
Vincent St-Amour
13443dec92
Add chaperone-vector*, unsafe-chaperone-vector, and property-only vector chaperones.
...
By analogy with the procedure chaperone equivalents.
2017-04-28 14:27:53 -05:00
shhyou
498f1795db
Change the wording of the documentation for impersonate-procedure with wrapper-proc being #f
2016-12-20 08:47:29 -06:00
shhyou
3b6eda5f7d
Remove the documentation mentioning chaperon-procedure*?
2016-12-19 23:40:25 +08:00
Vincent St-Amour
264a11f899
Add procedure-impersonator*?
.
...
Mostly useful to determine whether using `unsafe-chaperone-procedure` is ok.
2016-04-25 15:41:19 -05:00
Matthew Flatt
0a266780fe
unsafe-{impersonate,chaperone}-procedure: to racket/unsafe/ops
...
Move from racket/base, since the functions are unsafe.
2016-01-16 08:20:36 -07:00
Robby Findler
41c8d5bc27
add unsafe-{chaperone,impersonate}-procedure
2016-01-16 00:02:19 -06:00
Robby Findler
110f1bd9b0
different, more likely fix
2015-12-31 15:36:33 -06:00
Robby Findler
357b692d33
fix typo
2015-12-31 15:33:59 -06:00
Matthew Flatt
567679bf0a
{impersonate,chaperone}-hash: add equal-key-proc
wrapper
...
The optional `equal-key-proc` wrapper effectively interposes on calls
to `equal?` and `equal-hash-code` for hash-table keys.
2015-12-31 09:22:57 -07:00
Matthew Flatt
4354ce45d8
use `scribble/examples' for the Reference
...
Port `examples`, `interactions`, etc., to use the new `examples`
form of `scribble/examples`. The main intended effect is to ensure
that errors are produced by examples only as specifically
indicated.
2015-12-11 12:29:41 -07:00
Robby Findler
fcfa969b4a
add some examples to impersonate-procedure
2015-11-23 09:02:41 -06:00
Matthew Flatt
8e46e46d40
add more support for continuation marks in procedure impersonators
...
Allow a more dynamic (than `impersonator-prop:application-mark`)
determination of continuation marks and associated values to wrap the
call of an impersonated procedure.
2015-11-20 10:20:02 -07:00
Matthew Flatt
6bcb449b55
fix impersonator-property:application-mark
propagation
...
Propagate the mark value only if it's on the current continuation
frame, as originally intended. Adjust the docs to clarify.
2015-08-07 05:30:25 -06:00
Matthew Flatt
b923269569
make impersonator properties sensitive to prop:impersonator-of
...
When a structure type has `prop:inpersonator-of`, follow it
when attemptng to access imperonator properties.
This change fixes a problem with `impersonate-procedure` as
reported by Scott Moore.
2015-03-08 19:27:11 -06:00
Matthew Flatt
2ada651dd3
{chaperone,impersonate}-struct: allow structure type as a witness
...
Also, do not allow `struct-type` as a wrapped operation in
`chaperone-stuct` without a witness.
Related to PR 14970
2015-02-08 06:52:24 -07:00
Matthew Flatt
b05d07ad10
generalize {impersonator,chaperone}-of?
on immutable hash tables
2014-12-18 06:49:10 -07:00
Matthew Flatt
2d4f3e2ac9
remove the "racket-pkgs" directory layer
...
The layer is now redundant, since everything left in "pkgs" is in the
"racket-pkgs" category.
2014-12-08 05:22:59 -07:00