2016-11-22 03:15:52 +01:00
|
|
|
#ifndef __ANTHEM__UTILS_H
|
|
|
|
#define __ANTHEM__UTILS_H
|
|
|
|
|
|
|
|
namespace anthem
|
|
|
|
{
|
|
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
//
|
|
|
|
// Utils
|
|
|
|
//
|
|
|
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
2017-05-30 03:53:51 +02:00
|
|
|
constexpr const auto HeadVariablePrefix = "V";
|
|
|
|
constexpr const auto BodyVariablePrefix = "X";
|
|
|
|
constexpr const auto UserVariablePrefix = "U";
|
2018-04-20 16:32:18 +02:00
|
|
|
constexpr const auto IntegerVariablePrefix = "N";
|
2016-11-23 03:29:26 +01:00
|
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
2018-04-27 23:18:39 +02:00
|
|
|
enum class Tristate
|
|
|
|
{
|
|
|
|
True,
|
|
|
|
False,
|
|
|
|
Unknown,
|
|
|
|
};
|
|
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
2018-04-27 23:37:13 +02:00
|
|
|
enum class OperationResult
|
|
|
|
{
|
|
|
|
Unchanged,
|
|
|
|
Changed,
|
|
|
|
};
|
|
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
2018-04-29 21:27:31 +02:00
|
|
|
enum class EvaluationResult
|
|
|
|
{
|
|
|
|
True,
|
|
|
|
False,
|
|
|
|
Unknown,
|
|
|
|
Error,
|
|
|
|
};
|
|
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
2018-04-13 15:48:03 +02:00
|
|
|
enum class Domain
|
|
|
|
{
|
|
|
|
Noninteger,
|
|
|
|
Integer,
|
|
|
|
Unknown,
|
|
|
|
};
|
|
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
2018-04-29 20:37:40 +02:00
|
|
|
enum class SetSize
|
|
|
|
{
|
|
|
|
Empty,
|
|
|
|
Unit,
|
|
|
|
Multi,
|
|
|
|
Unknown,
|
|
|
|
};
|
|
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
struct Type
|
|
|
|
{
|
|
|
|
Domain domain{Domain::Unknown};
|
|
|
|
SetSize setSize{SetSize::Unknown};
|
|
|
|
};
|
|
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
2016-11-22 03:15:52 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
#endif
|