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

⚡ Feature: Generic tree and visitation framework #17

Merged
merged 59 commits into from
May 4, 2024
Merged

Conversation

deavmi
Copy link
Owner

@deavmi deavmi commented Apr 13, 2024

Purpose ✍️

Implement Tree and VisitationTree.

Todo

  • Update README.md
  • Documentation
  • Implementation
  • Testing

- WIP
@deavmi deavmi self-assigned this Apr 13, 2024
@deavmi deavmi changed the title Tree ⚡ Feature: Generic tree and visitation framework Apr 13, 2024
- Added initial dfs
- By default use the `always` strat
- Added a TODO
- Added ability to append

Tree (unittests)

- Updated unittests to test appending
- Now uses the `TreeNode!(T)` instead of the `T` itself
- Working on a visitation tree implementation
- Pass in, explcitly, the touch startergy
- Correct visitation stratergy
- Added missing assertions
- Added missing assertions
- Added rightward shifting mechanism
- Added leftwards shifting mechanism
- Added removal
- Added indexing support
- Reworking opSlicwe
- opSlice done
- Added normal opSlice as well
- Updated test for parametwerized opSlice
- Added opIndex
- Cleaned up
- Removed `getValue()`

Tree (unittests)

- Added test for `removeNode(Tree!(T))`
@deavmi deavmi added documentation Improvements or additions to documentation enhancement New feature or request labels Apr 27, 2024
- Added `shiftIntoLeftwards` and `shiftIntoRightwards`
- Use new methods
- Cleaned up
- Documented

TouchStratergy

- Documented
- Documented method
@deavmi
Copy link
Owner Author

deavmi commented May 2, 2024

Added some more docs, will finish on the weekend

deavmi added 12 commits May 2, 2024 22:40
- Documented
- Cleaned
- Documented
- Added `opDollar()` and `@property`'d `length()`
- Adde doc
- Renamed `Tree!(T)` to `Graph!(T)`
- Typo fix
- Clean up
- Renamed
- Documented helper methods
- Typo fix
-  Documented `dfs(...)`
-  Documented `toString()`
@deavmi
Copy link
Owner Author

deavmi commented May 4, 2024

The implementation seems completed to me ✔️

deavmi added 4 commits May 4, 2024 10:42
- Added tests for `opIndex(size_t)`
- Implemented `getValue()`

Graph (unittests)

- Added tests for `getValue()`
- Added test for `opDollar()`
- Updated docs
@deavmi
Copy link
Owner Author

deavmi commented May 4, 2024

All done

@deavmi
Copy link
Owner Author

deavmi commented May 4, 2024

Merged ✔️

@deavmi deavmi merged commit 1a754cf into master May 4, 2024
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant