-
Notifications
You must be signed in to change notification settings - Fork 26
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
♻️ vendor logicblocks #424
Conversation
Signed-off-by: burgholzer <[email protected]>
include/logicblocks/Encodings.hpp
Outdated
}; | ||
|
||
struct WeightedVar { | ||
WeightedVar(LogicTerm v, const int w) : var(std::move(v)), weight(w) {} |
Check notice
Code scanning / CodeQL
Large object passed by value
include/logicblocks/Encodings.hpp
Outdated
|
||
struct NestedVar { | ||
explicit NestedVar(LogicTerm v) : var(std::move(v)), list(){}; | ||
NestedVar(LogicTerm v, std::vector<NestedVar> l) |
Check notice
Code scanning / CodeQL
Large object passed by value
include/logicblocks/Encodings.hpp
Outdated
using namespace logicbase; | ||
|
||
struct NestedVar { | ||
explicit NestedVar(LogicTerm v) : var(std::move(v)), list(){}; |
Check notice
Code scanning / CodeQL
Large object passed by value
include/logicblocks/Encodings.hpp
Outdated
enum class Type { Uninitialized, AuxVar, ProgramVar }; | ||
struct SavedLit { | ||
SavedLit() : var(LogicTerm::noneTerm()) {} | ||
SavedLit(Type t, LogicTerm v) : type(t), var(std::move(v)) {} |
Check notice
Code scanning / CodeQL
Large object passed by value
return z3base->variables.at(id)[static_cast<size_t>(type)].second; | ||
} | ||
|
||
z3::expr Z3Base::convert(const LogicTerm& a, CType toType) { |
Check warning
Code scanning / CodeQL
Poorly documented large function
Codecov ReportAttention:
Additional details and impacted files@@ Coverage Diff @@
## main #424 +/- ##
=======================================
- Coverage 92.7% 89.8% -3.0%
=======================================
Files 48 61 +13
Lines 5340 6340 +1000
Branches 910 1008 +98
=======================================
+ Hits 4952 5694 +742
- Misses 388 646 +258
|
Signed-off-by: burgholzer <[email protected]>
Signed-off-by: burgholzer <[email protected]>
Signed-off-by: burgholzer <[email protected]>
Signed-off-by: burgholzer <[email protected]>
Signed-off-by: burgholzer <[email protected]>
Signed-off-by: burgholzer <[email protected]>
Signed-off-by: burgholzer <[email protected]>
Ignoring the decrease in coverage here in favor of the simplicity of the resulting solution. |
Description
This PR was born out of frustration with the implementation of the
LogicBlocks
library as well as the fact that maintaining it as a submodule has lots of disadvantages (no shared CMake configuration) for little to no benefits.So this PR does two things:
LogicBlocks
submodule completely and instead vendors the code directly as part of QMAP.Checklist: