-
Notifications
You must be signed in to change notification settings - Fork 167
Refactor to use an arena #83
Copy link
Copy link
Closed
Description
This would be a large project, and may never happen, but the architecture would work much better with an arena of Contexts instead of using Rc<RefCell<>> everywhere. Not only would the code be cleaner, but the lifetimes of SyntaxDefinition and SyntaxSet would be more correct, avoiding the footgun of dropping a SyntaxSet and keeping a cloned SyntaxDefinition that no longer has references to nested languages.
This would look something like using a Vec<Context> and indices everywhere.
It may also be easier to parallelize and make thread-safe, but that still requires extra work because of lazy regex compilation. See extensive discussion in #20.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels