Skip to content

Wire protocol_reflection.hxx: allocator-free single-method dispatch on Greeter (12/20) - #112

Draft
jbcoe wants to merge 1 commit into
reflection/10-forwardersfrom
reflection/11-protocol-reflection-slice
Draft

Wire protocol_reflection.hxx: allocator-free single-method dispatch on Greeter (12/20)#112
jbcoe wants to merge 1 commit into
reflection/10-forwardersfrom
reflection/11-protocol-reflection-slice

Conversation

@jbcoe

@jbcoe jbcoe commented Jul 27, 2026

Copy link
Copy Markdown
Owner

protocol<T, Allocator> gets a real generic definition under
XYZ_PROTOCOL_ENABLE_REFLECTION: one class template, built from
forwarders.hxx's combinator and a define_vtable_entries-built vtable,
working for any interface satisfying reflection_protocol_concept
with no per-interface codegen. Scope is deliberately narrow:
default-allocator construction and copy/move/destroy/swap only.

@jbcoe jbcoe changed the title Wire protocol_reflection.hxx: allocator-free single-method dispatch on Greeter Wire protocol_reflection.hxx: allocator-free single-method dispatch on Greeter (12/20) Jul 27, 2026
@jbcoe
jbcoe force-pushed the reflection/10-forwarders branch from 7f3d8aa to d5fa597 Compare July 28, 2026 11:33
@jbcoe
jbcoe force-pushed the reflection/11-protocol-reflection-slice branch from b469606 to 8f0f1a5 Compare July 28, 2026 11:33
@jbcoe
jbcoe force-pushed the reflection/10-forwarders branch from d5fa597 to 114a724 Compare July 28, 2026 14:22
@jbcoe
jbcoe force-pushed the reflection/11-protocol-reflection-slice branch from 8f0f1a5 to 3a17484 Compare July 28, 2026 14:22
@jbcoe
jbcoe force-pushed the reflection/10-forwarders branch from 114a724 to d9560d1 Compare July 28, 2026 14:29
@jbcoe
jbcoe force-pushed the reflection/11-protocol-reflection-slice branch from 3a17484 to be8f180 Compare July 28, 2026 14:29
@jbcoe
jbcoe force-pushed the reflection/10-forwarders branch from d9560d1 to d80ea3b Compare July 28, 2026 15:14
@jbcoe
jbcoe force-pushed the reflection/11-protocol-reflection-slice branch from be8f180 to 43faffe Compare July 28, 2026 15:14
@jbcoe
jbcoe force-pushed the reflection/10-forwarders branch from d80ea3b to 75653d3 Compare July 28, 2026 15:28
@jbcoe
jbcoe force-pushed the reflection/11-protocol-reflection-slice branch from 43faffe to efbc982 Compare July 28, 2026 15:28
@jbcoe
jbcoe force-pushed the reflection/10-forwarders branch from 75653d3 to d309744 Compare July 28, 2026 18:27
@jbcoe
jbcoe force-pushed the reflection/11-protocol-reflection-slice branch from efbc982 to 5513b25 Compare July 28, 2026 18:27
@jbcoe
jbcoe force-pushed the reflection/10-forwarders branch from d309744 to ef35579 Compare July 28, 2026 19:37
@jbcoe
jbcoe force-pushed the reflection/11-protocol-reflection-slice branch from 5513b25 to 9bec58c Compare July 28, 2026 19:37
@jbcoe
jbcoe force-pushed the reflection/10-forwarders branch from ef35579 to 2c2a893 Compare July 28, 2026 20:23
@jbcoe
jbcoe force-pushed the reflection/11-protocol-reflection-slice branch from 9bec58c to e610410 Compare July 28, 2026 20:23
@jbcoe
jbcoe force-pushed the reflection/10-forwarders branch from 2c2a893 to e20d572 Compare July 29, 2026 09:48
@jbcoe
jbcoe force-pushed the reflection/11-protocol-reflection-slice branch from e610410 to 0ffec70 Compare July 29, 2026 09:48
…n Greeter

protocol<T, Allocator> gets a real generic definition under
XYZ_PROTOCOL_ENABLE_REFLECTION: one class template, built from
forwarders.hxx's combinator and a define_vtable_entries-built vtable,
working for any interface satisfying reflection_protocol_concept
with no per-interface codegen. Scope is deliberately narrow:
default-allocator construction and copy/move/destroy/swap only.
@jbcoe
jbcoe force-pushed the reflection/10-forwarders branch from e20d572 to edf1316 Compare July 29, 2026 10:14
@jbcoe
jbcoe force-pushed the reflection/11-protocol-reflection-slice branch from 0ffec70 to c39fbdb 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