Make GlobalFlowStateAnalysis public #7679
Open
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.
Goal
This PR's purpose is to make the
GlobalFlowStateAnalysis
usable by external analyzers.Why?
As discussed in this issue/answer, it has been recommended by @mavasani for use by 3rd party analyzers:
Currently though, the
GlobalFlowStateAnalysis
is markedinternal
and as such not easily usable by a 3rd party analyzer.I'm working on my Master Thesis at the moment and am building a custom analyzer on top of the
GlobalFlowStateAnalysis
; which works fine when circumventing theinternal
guard. I'd like though to be able and to enable others to use it without any dirty hacks :).How
I've tried to do as few changes as absolutely required; as such, the PR only changed the
internal
keyword of theGlobalFlowStateAnalysis
class topublic
and then changed visibility for all classes it inherits from so that it correctly compiles.This is my first PR to the project, so please be open with your advice if anything's not as it should be.
Thanks!