beyond-all-reason / beyond-all-reason/RecoilEngine
Refactor and use string_view based tokenizers
- Dominant language
- C++
- Stars
- 679
- Forks
- 290
- Avg merge
- 3d 2h
- Merged PRs (30d)
- 40
Description
Refactor `CSimpleParser::Tokenize` or create a new tokenizer function that returns `vector` so that it can be used in places where the input is immutable and outlives the output for more efficient access and memory management.
See:
- [a reference implementation](https://stackoverflow.com/a/58048821)
- [Context](https://github.com/beyond-all-reason/spring/pull/472#discussion_r1013514864)
Contributor guide
Research direction
Start by locating CSimpleParser::Tokenize and its callers. Read the linked reference implementation and the discussion in pull request 472, then identify which callers have immutable inputs that outlive the tokenized output. Done means those suitable uses can access string_view tokens without unnecessary string allocation while existing behavior remains intact.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- backend
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100