Check-in [a35300bfa3]

Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Simplify the resolution protocol
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: a35300bfa3d8387cd24a35c2bab69a0e7be4190bb3b90f96207bbeab44ce6d22
User & Date: dkf 2018-09-11 08:16:19.126
Context
2018-09-12
13:11
TIP 430 Accepted check-in: 28af7d005c user: dkf tags: trunk
2018-09-11
08:16
Simplify the resolution protocol check-in: a35300bfa3 user: dkf tags: trunk
2018-09-08
12:53
TIP 516: xref to implementation and some notes based on that experience check-in: e6d31c3d8a user: dkf tags: trunk
Changes
Unified Diff Ignore Whitespace Patch
Changes to tip/516.md.
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
    This removes the _item_ (or items) from the list of items in the slot. If
    an _item_ is not present in the slot, this does nothing; it is not an
    error to remove a non-present item. If there are no such items in the
    arguments, this does nothing; it is not an error to remove no items.

To support this, an extra internal operation is added:

  * _slot_ `Resolve` _list_

    This returns the items of _list_ with a resolution operation applied to
    them. The meaning of this operation will depend on the kind of values held
    in a particular slot, but for a slot of classes then the relevant type of
    resolution would be command resolution. (The main slot method
    implementation classes will ensure that this method is always called in a
    context where the resolution context is that of the caller.)

# Implementation

See the `tip-516` branch.







|

|
|
|







44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
    This removes the _item_ (or items) from the list of items in the slot. If
    an _item_ is not present in the slot, this does nothing; it is not an
    error to remove a non-present item. If there are no such items in the
    arguments, this does nothing; it is not an error to remove no items.

To support this, an extra internal operation is added:

  * _slot_ `Resolve` _slotElement_

    This returns the _slotElement_ with a resolution operation applied to it.
    The meaning of this operation will depend on the kind of values held in a
    particular slot, but for a slot of classes then the relevant type of
    resolution would be command resolution. (The main slot method
    implementation classes will ensure that this method is always called in a
    context where the resolution context is that of the caller.)

# Implementation

See the `tip-516` branch.