Skip to content

Improper value instantiation and parenting during parsing caused a disconnected tree nodes. #99

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

Closed

Conversation

Arkatufus
Copy link
Contributor

@Arkatufus Arkatufus commented Jul 15, 2019

Bug:
Improper value instantiation and parenting during parsing caused a disconnected tree node, causing self-referencing substitution to fail to find the proper old value to backtrack to.

Fix:

  • Clean up HoconField constructor and instantiation.
  • Strict parenting rule for tree nodes to clean up object reconstruction.
  • Move object value tracking and upkeep responsibility to the parser instead of the substitution resolver to guarantee tree hierarchy consistency,

Fix #95
Fix #97

@Arkatufus Arkatufus changed the title Improper value creation during parsing caused a disconnected substitution. Improper value instantiation and parenting during parsing caused a disconnected tree nodes. Jul 15, 2019
@Arkatufus Arkatufus requested a review from Aaronontheweb July 16, 2019 03:57
@Arkatufus Arkatufus self-assigned this Jul 16, 2019
@Arkatufus Arkatufus added the bug label Jul 16, 2019
@iron9light
Copy link
Contributor

Oh my ...
You nearly rewrite the core part!
Thanks @Arkatufus for your work!

@Arkatufus
Copy link
Contributor Author

No problem, it's kind of my responsibility, since it was my code in the first place.

Aaronontheweb pushed a commit that referenced this pull request Jul 29, 2019
* Simplify HoconField constructor

* Strict node parenting for cleaner object reconstruction

* Reverse all object value upkeep responsibility to the parser to support proper self-referencing substitution backtracking.

* Remove HoconValue.Undefined

* Merge clean-up, remove HoconValue.Undefined references.

* Merge cleanup
@Aaronontheweb Aaronontheweb mentioned this pull request Jul 29, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

substitution with itself has bug2 substitution with itself has bug
2 participants