35 lines
1.2 KiB
35 lines
1.2 KiB
#ifndef STORM_LOGIC_UNARYBOOLEANSTATEFORMULA_H_
|
|
#define STORM_LOGIC_UNARYBOOLEANSTATEFORMULA_H_
|
|
|
|
#include "storm/logic/UnaryStateFormula.h"
|
|
#include "storm/logic/UnaryBooleanOperatorType.h"
|
|
|
|
namespace storm {
|
|
namespace logic {
|
|
class UnaryBooleanStateFormula : public UnaryStateFormula {
|
|
public:
|
|
typedef storm::logic::UnaryBooleanOperatorType OperatorType;
|
|
|
|
UnaryBooleanStateFormula(OperatorType operatorType, std::shared_ptr<Formula const> const& subformula);
|
|
|
|
virtual ~UnaryBooleanStateFormula() {
|
|
// Intentionally left empty.
|
|
};
|
|
|
|
virtual bool isUnaryBooleanStateFormula() const override;
|
|
|
|
virtual boost::any accept(FormulaVisitor const& visitor, boost::any const& data) const override;
|
|
|
|
OperatorType getOperator() const;
|
|
|
|
virtual bool isNot() const;
|
|
|
|
virtual std::ostream& writeToStream(std::ostream& out, bool allowParentheses = false) const override;
|
|
|
|
private:
|
|
OperatorType operatorType;
|
|
};
|
|
}
|
|
}
|
|
|
|
#endif /* STORM_LOGIC_UNARYBOOLEANSTATEFORMULA_H_ */
|