patrick
/
plasp
Archived
1
0
Fork 0
This repository has been archived on 2023-07-19. You can view files and clone it, but cannot push or open issues or pull requests.
plasp/include/plasp/sas/Predicate.h

47 lines
965 B
C
Raw Normal View History

#ifndef __PLASP__SAS__PREDICATE_H
#define __PLASP__SAS__PREDICATE_H
#include <iosfwd>
#include <string>
#include <vector>
2016-06-14 17:35:32 +02:00
#include <plasp/utils/LogStream.h>
2016-05-27 03:58:59 +02:00
#include <plasp/utils/Parser.h>
namespace plasp
{
namespace sas
{
////////////////////////////////////////////////////////////////////////////////////////////////////
//
// Predicate
//
////////////////////////////////////////////////////////////////////////////////////////////////////
2016-05-22 16:00:58 +02:00
class Predicate
{
2016-05-22 16:00:58 +02:00
public:
static Predicate fromSAS(utils::Parser<> &parser);
2016-05-22 16:00:58 +02:00
using Arguments = std::vector<std::string>;
public:
2016-06-14 17:35:32 +02:00
void printAsSAS(utils::LogStream &outputStream) const;
void printAsASP(utils::LogStream &outputStream) const;
2016-05-22 16:00:58 +02:00
const std::string &name() const;
const Arguments &arguments() const;
private:
std::string m_name;
std::vector<std::string> m_arguments;
};
////////////////////////////////////////////////////////////////////////////////////////////////////
}
}
#endif