3
#include "LinearPrograms.h"
5
namespace PetriEngine {
6
namespace Simplification {
8
std::shared_ptr<PQL::Condition> formula = nullptr;
9
AbstractProgramCollection_ptr lps;
10
AbstractProgramCollection_ptr neglps;
12
Retval (const std::shared_ptr<PQL::Condition> formula,
13
AbstractProgramCollection_ptr&& lps1,
14
AbstractProgramCollection_ptr&& lps2)
15
: formula(formula), lps(std::move(lps1)), neglps(std::move(lps2)) {
20
Retval (const std::shared_ptr<PQL::Condition> formula,
21
const AbstractProgramCollection_ptr& lps1,
22
const AbstractProgramCollection_ptr& lps2)
23
: formula(formula), lps(lps1), neglps(lps2) {
28
Retval (const std::shared_ptr<PQL::Condition> formula)
30
lps = std::make_shared<SingleProgram>();
31
neglps = std::make_shared<SingleProgram>();
37
Retval(const Retval&& other)
38
: formula(std::move(other.formula)), lps(std::move(other.lps)), neglps(std::move(other.neglps))
44
Retval(Retval&& other)
45
: formula(other.formula), lps(std::move(other.lps)), neglps(std::move(other.neglps))
51
Retval& operator=(Retval&& other) {
52
lps = std::move(other.lps);
53
neglps = std::move(other.neglps);
54
formula = std::move(other.formula);
61
lps = std::make_shared<SingleProgram>();
62
neglps = std::make_shared<SingleProgram>();