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

Save a tiny bit of memory by rearranging fields; also using the newer way to "unsafely" instantiate a slice: #150

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Commits on Mar 8, 2024

  1. Saving a tiny bit of memory by rearranging fields; also using the new…

    …er way to "unsafely" instantiate a slice:
    
    By rearranging the fields the memory usage per type was reduced as follows:
    
    - `Parser` 24 -> 16 bytes
    - `QueryError` 24 -> 8 bytes
    - `QueryCapture` 16 -> 8 bytes
    - `QueryMatch` 16 -> 8 bytes
    - `readFuncsMap` 16 -> 8 bytes
    
    In practice, unless you capture the matches for the entire tree at once
    (AND the tree is large) there won't be any difference. However, typically
    you'd use `cursor.SetPointRange()` and focus on a particular area of the
    tree, so these savings won't be observed in practice unless somehow you
    are creating lots of `QueryCapture` and `QueryMatch` nodes.
    
    Oh, and also added a TODO note, there's something in there that looks out
    of place and needs to be investigated further (a useless break statement).
    alexaandru committed Mar 8, 2024
    Configuration menu
    Copy the full SHA
    e29bdf0 View commit details
    Browse the repository at this point in the history