Skip to content

Increase amount of work done without allocation

Michael Aaron Murphy requested to merge jFransham:master into master

Created by: jFransham

Problem: [describe the problem you try to solve with this PR.]

We allocate a lot

Solution: [describe carefully what you change by this PR.]

Use SmallVec and SmallString (based on SmallVec) to allow small vectors and strings to be stored on the stack.

Changes introduced by this pull request:

Some public API functions that took Strings take SmallStrings now. Also, it's now even faster on my machine.

  • [...]
  • [...]
  • [...]

Drawbacks: [if any, describe the drawbacks of this pull request.]

TODOs: [what is not done yet.]

Clean up the code, unify the methods of creating a singleton smallvec (probably with a macro), move the typedefs to a types module.

Fixes: [what issues this fixes.]

State: [the state of this PR, e.g. WIP, ready, etc.]

WIP

Blocking/related: [issues or PRs blocking or being related to this issue.]

Other: [optional: for other relevant information that should be known or cannot be described in the other fields.]


The above template is not necessary for smaller PRs.

Merge request reports