Uh oh!
There was an error while loading. Please reload this page.
Add support for passing arguments to constructors - #223
Conversation
- added InterfaceTraits type trait that can be used to define the constructor arguments used by the derived classes - changed class loaders to pass arguments to the derived classes based on the information stored in InterfaceTraits Signed-off-by: pum1k <55055380+pum1k@users.noreply.github.com>
pum1k
commented
Jan 29, 2026
Hi @ahcorde, |
Pulls: #223 |
Signed-off-by: pum1k <55055380+pum1k@users.noreply.github.com>
pum1k
commented
Feb 6, 2026
The |
Signed-off-by: pum1k <55055380+pum1k@users.noreply.github.com>
pum1k
commented
Feb 6, 2026
The MSVC problem should also be fixed now. |
ahcorde
commented
Feb 6, 2026
Pulls: #223 |
pum1k
commented
Feb 13, 2026
Is there anything else I need to do before this can be merged? |
pum1k
commented
Feb 18, 2026
@ahcorde, can you, please, review this? |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Signed-off-by: pum1k <55055380+pum1k@users.noreply.github.com>
Uh oh!
There was an error while loading. Please reload this page.
This PR adds the ability to pass arguments to constructors of the derived classes. As a result, users can now create plugins that are not default constructible, removing the need for initialize method.
To achieve this, a new customization point was added: template struct
InterfaceTraits. Specializing this struct allows users to define signature of the constructors that will be required by the derived classes.If users do not specialize this structure, default constructor is assumed and there are no changes to the behavior.