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

Move IgnoreMaxNamespace logic to the application layer #195

Open
staheri14 opened this issue May 12, 2023 · 0 comments
Open

Move IgnoreMaxNamespace logic to the application layer #195

staheri14 opened this issue May 12, 2023 · 0 comments
Assignees

Comments

@staheri14
Copy link
Contributor

Problem

In the existing NMT implementation, there is a configuration option called IgnoreMaxNamespace that, when enabled, enforces a customized approach for determining a node's namespace range using its left and right children (please see the HashNode). However, this particular feature negatively affects code readability and maintainability. Additionally, it has led to confusion and raised questions among those encountering this logic for the first time. To address these issues, it is necessary to refactor the NMT implementation and elevate it to higher-level business logic, rather than keeping it within the NMT implementation itself.

Proposal

One potential approach involves revising the NMT constructor's signature to include a parameter that accepts a function. This function would take the namespaces of the left and right children and specify the namespace range of the parent node. Subsequently, this function can be utilized during the computation of node hashes.

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

1 participant