Remove m_reader / m_builder members from AnalysisContext #6417
+14
−6
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.
Constructing these objects is very expensive compared to the cost of creating the
AnalysisContext
.m_reader
appears to be entirely unused so it is simply removed.m_builder
is only used withinInform
. It may be appropriate to move it to a local variable within that function, but I'm not sure how oftenInform
is called. Given that theJson::StreamWriterBuilder
is rather expensive to construct I've instead opted to make it static so it is initialized only on first use and then reused by later calls.Json::StreamWriterBuilder::newStreamWriter
does not mutate any state so this seems ok in terms of thread-safety.