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

Rewrite EvalString #94

Merged
merged 1 commit into from
Oct 16, 2024
Merged

Rewrite EvalString #94

merged 1 commit into from
Oct 16, 2024

Conversation

elliotgoodrich
Copy link
Owner

Create a new EvalString that performs better.

In particular:

  • it is more cache friendly, having only one allocation of contiguous memory
  • it retaings all capacity when clearing, meaning the EvalString we reuse in ManifestParser will allocate a lot less
  • evaluate removes some ifs since we know variables always follow text

@elliotgoodrich elliotgoodrich force-pushed the improve-evalstring branch 2 times, most recently from 5b56671 to b949f96 Compare October 16, 2024 05:22
Create a new `EvalString` that performs better.

In particular:
  * it is more cache friendly, having only one allocation of contiguous
    memory
  * it retaings all capacity when clearing, meaning the `EvalString` we
    reuse in `ManifestParser` will allocate a lot less
  * `evaluate` removes some `if`s since we know variables always follow
    text
@elliotgoodrich elliotgoodrich merged commit b34f74d into main Oct 16, 2024
8 checks passed
@elliotgoodrich elliotgoodrich deleted the improve-evalstring branch October 16, 2024 05:27
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.

1 participant