Skip to content

Conversation

@mkeskells
Copy link
Contributor

@mkeskells mkeskells commented Aug 3, 2025

SUMMARY

  • Trim some retained memory fom Node
  • Move branch-specific methods to BranchNode
  • replace checks for LEAF_NODE with instanceof checks make some leaf-node-specific code conditional

On all nodes - remove NodeType - its hardly used anyway
Leaf nodes comprise > 50% of all Node (I believe), and there are fields that can never be used/are constant, so remove them by add a BranchNode which can have prefixes/size etc

Automated Checks

  • I have run ./gradlew test and made sure that my PR does not break any unit test.

Move branch-specific methods to BranchNode
replace checks for LEAF_NODE with instanceof checks
make some leaf-node-specific code to conditional
@mkeskells mkeskells force-pushed the part-776-split-branch-and-leaf branch from 0279cb2 to 04fe661 Compare August 3, 2025 10:28
@lemire
Copy link
Member

lemire commented Aug 4, 2025

This is reasonable.

@lemire lemire merged commit 9ecff9e into RoaringBitmap:master Aug 4, 2025
7 checks passed
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

Successfully merging this pull request may close these issues.

2 participants