Skip to content

Add protocol_view<T> and protocol_view<const T> (18/20) - #118

Draft
jbcoe wants to merge 1 commit into
reflection/16-narrowing-a-subsetfrom
reflection/17-protocol-view
Draft

Add protocol_view<T> and protocol_view<const T> (18/20)#118
jbcoe wants to merge 1 commit into
reflection/16-narrowing-a-subsetfrom
reflection/17-protocol-view

Conversation

@jbcoe

@jbcoe jbcoe commented Jul 27, 2026

Copy link
Copy Markdown
Owner

Non-owning views dispatching through a raw pointer/vtable pair
instead of protocol's allocator-owned storage, reusing the same
forwarder-combinator and thunk machinery; the const view exposes
only const members, through a const void*.

@jbcoe jbcoe changed the title Add protocol_view<T> and protocol_view<const T> Add protocol_view<T> and protocol_view<const T> (18/20) Jul 27, 2026
@jbcoe
jbcoe force-pushed the reflection/16-narrowing-a-subset branch from 27d926c to 2d39def Compare July 28, 2026 11:33
@jbcoe
jbcoe force-pushed the reflection/17-protocol-view branch from 9d0f043 to ccf7f63 Compare July 28, 2026 11:33
@jbcoe
jbcoe force-pushed the reflection/16-narrowing-a-subset branch from 2d39def to 1b7b545 Compare July 28, 2026 14:22
@jbcoe
jbcoe force-pushed the reflection/17-protocol-view branch from ccf7f63 to 357f971 Compare July 28, 2026 14:22
@jbcoe
jbcoe force-pushed the reflection/16-narrowing-a-subset branch from 1b7b545 to 40715e8 Compare July 28, 2026 14:27
@jbcoe
jbcoe force-pushed the reflection/17-protocol-view branch from 357f971 to 1e62cfd Compare July 28, 2026 14:27
@jbcoe
jbcoe force-pushed the reflection/16-narrowing-a-subset branch from 40715e8 to 3681824 Compare July 28, 2026 14:30
@jbcoe
jbcoe force-pushed the reflection/17-protocol-view branch from 1e62cfd to 442c07b Compare July 28, 2026 14:30
@jbcoe
jbcoe force-pushed the reflection/16-narrowing-a-subset branch from 3681824 to 812a327 Compare July 28, 2026 15:14
@jbcoe
jbcoe force-pushed the reflection/17-protocol-view branch from 442c07b to 45cd500 Compare July 28, 2026 15:14
@jbcoe
jbcoe force-pushed the reflection/16-narrowing-a-subset branch from 812a327 to 1bb9691 Compare July 28, 2026 15:29
@jbcoe
jbcoe force-pushed the reflection/17-protocol-view branch from 45cd500 to 53df339 Compare July 28, 2026 15:29
@jbcoe
jbcoe force-pushed the reflection/16-narrowing-a-subset branch from 1bb9691 to ab0371a Compare July 28, 2026 18:27
@jbcoe
jbcoe force-pushed the reflection/17-protocol-view branch from 53df339 to 1ca29c9 Compare July 28, 2026 18:27
@jbcoe
jbcoe force-pushed the reflection/16-narrowing-a-subset branch from ab0371a to ea2f9b2 Compare July 28, 2026 19:37
@jbcoe
jbcoe force-pushed the reflection/17-protocol-view branch from 1ca29c9 to db2a0dd Compare July 28, 2026 19:37
@jbcoe
jbcoe force-pushed the reflection/16-narrowing-a-subset branch from ea2f9b2 to 5f3c52d Compare July 28, 2026 20:23
@jbcoe
jbcoe force-pushed the reflection/17-protocol-view branch from db2a0dd to cd1661a Compare July 28, 2026 20:23
@jbcoe
jbcoe force-pushed the reflection/16-narrowing-a-subset branch from 5f3c52d to 6fc90b8 Compare July 29, 2026 09:48
@jbcoe
jbcoe force-pushed the reflection/17-protocol-view branch from cd1661a to 7207351 Compare July 29, 2026 09:48
Non-owning views dispatching through a raw pointer/vtable pair
instead of protocol's allocator-owned storage, reusing the same
forwarder-combinator and thunk machinery; the const view exposes
only const members, through a const void*.
@jbcoe
jbcoe force-pushed the reflection/16-narrowing-a-subset branch from 6fc90b8 to 75180f7 Compare July 29, 2026 10:14
@jbcoe
jbcoe force-pushed the reflection/17-protocol-view branch from 7207351 to 0e0d4bb Compare July 29, 2026 10:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant