Thread overview
Mixin a function into a struct only if no member with that name already exists
Dec 29, 2021
Tobias Pankrath
Dec 29, 2021
Stanislav Blinov
Dec 29, 2021
Tobias Pankrath
Dec 29, 2021
Adam D Ruppe
December 29, 2021

I am trying to implement the builder pattern for some structs. Currently I am auto implementing all methods by mixing them into the builder, but now I need some custom logic for some of the fields and I figured I just write them down by hand and mixin the rest.

I tried checking if it is contained in the FieldNameTuple, but that (understandably) creates a circular reference: https://run.dlang.io/is/Xih7yP

How do I mixin a function only if it is not already present?

December 29, 2021

On Wednesday, 29 December 2021 at 10:14:13 UTC, Tobias Pankrath wrote:

>

How do I mixin a function only if it is not already present?

Perhaps use opDispatch?

December 29, 2021

On Wednesday, 29 December 2021 at 10:21:07 UTC, Stanislav Blinov wrote:

>

On Wednesday, 29 December 2021 at 10:14:13 UTC, Tobias Pankrath wrote:

>

How do I mixin a function only if it is not already present?

Perhaps use opDispatch?

That's a great idea and I'll look into it.

December 29, 2021
On Wednesday, 29 December 2021 at 10:14:13 UTC, Tobias Pankrath wrote:
> How do I mixin a function only if it is not already present?

This is the default behavior of template mixins.