Made Variable a proper class.

This commit is contained in:
2016-05-21 15:54:03 +02:00
parent bac8d5c842
commit 5e016d2d79
6 changed files with 99 additions and 57 deletions

View File

@@ -3,6 +3,7 @@
#include <iosfwd>
#include <string>
#include <vector>
namespace plasp
{
@@ -31,6 +32,10 @@ struct Value
////////////////////////////////////////////////////////////////////////////////////////////////////
using Values = std::vector<Value>;
////////////////////////////////////////////////////////////////////////////////////////////////////
std::ostream &operator <<(std::ostream &ostream, const Value &value);
////////////////////////////////////////////////////////////////////////////////////////////////////

View File

@@ -18,15 +18,22 @@ namespace sas
//
////////////////////////////////////////////////////////////////////////////////////////////////////
struct Variable
class Variable
{
static Variable fromSAS(std::istream &istream);
public:
static Variable fromSAS(std::istream &istream);
using Values = std::vector<Value>;
public:
const std::string &name() const;
int axiomLayer() const;
const Values &values() const;
std::string name;
int axiomLayer;
Values values;
private:
Variable();
std::string m_name;
int m_axiomLayer;
Values m_values;
};
////////////////////////////////////////////////////////////////////////////////////////////////////