Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cannot recursively initialize Nodes #112

Open
ryanpoulos opened this issue Dec 8, 2021 · 1 comment
Open

Cannot recursively initialize Nodes #112

ryanpoulos opened this issue Dec 8, 2021 · 1 comment
Assignees

Comments

@ryanpoulos
Copy link

The Node class' dynamic dispatch Initialize method is currently non-reentrant. This breaks any attempt to recursively generate child nodes that may be the same type as the caller. Not sure why Initialize is currently non-reentrant, but switching to shared-clone fixes the issue and should not break any current code that uses this class (they would have to update their Initialize methods to match though).

Example of why this is needed: I have 'data type' Nodes that generate the view hierarchy to match the provided data type. If I have a type that is an array within a cluster within an array, the non-reentrancy breaks the execution at the second array since I'm currently still in an array node's Initialize method, and it cannot be reentered.

@ryanpoulos
Copy link
Author

@becega Benji save me! :P

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

No branches or pull requests

2 participants