SyntaxSetBuilder: Allow to list added syntaxes via a syntaxes() method #340
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is analogous to the existing public
SyntaxSet::syntaxes()
method.Background information
I am doing some prototyping around ways to improve the startup time of bat (see sharkdp/bat#951). And the way to improve startup time is to only load the syntaxes needed for the given input file(s). Instead of having one giant
SyntaxSet
, we need several smaller ones.The added method enables clients such as bat to analyze dependencies between
SyntaxDefinition
s and build up many smaller, self-containedSyntaxSet
s.An alternative to this PR could be to move out
SyntaxSetBuilder::add_from_folder()
to some place where the logic can live and be used independently, i.e. without taking a detour through aSyntaxSetBuilder
. That however seems to like a significantly higher hanging fruit at this point.