Organize constraint system and value domain modules into dune libraries #1313
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 continues #1288.
Previously
Analyses
was a mix of constraint systems, analysis specifications and analysis result outputting. By splitting this module up, constraint systems and solvers can nicely be isolated.The other big chunk at the bottom of
goblint.lib
dependency graph was all the variousValueDomain
parts. All analyses indirectly depend on them due to the existence of theEvalValue
query.A couple of not-so-related modules also come along for now. We'll have to find a better place for those later.
This PR introduces new dune libraries:
goblint.constraint
for (side-effecting) constraint systems.goblint.solver
for solvers.goblint.cdomain.value
forValueDomain
and all of its components.TODO