#ifndef __PLASP__SAS__ASSIGNED_VARIABLE_H #define __PLASP__SAS__ASSIGNED_VARIABLE_H #include #include #include #include #include namespace plasp { namespace sas { //////////////////////////////////////////////////////////////////////////////////////////////////// // // AssignedVariable // //////////////////////////////////////////////////////////////////////////////////////////////////// class AssignedVariable; using AssignedVariables = std::vector; //////////////////////////////////////////////////////////////////////////////////////////////////// class AssignedVariable { public: static AssignedVariable fromSAS(tokenize::Tokenizer<> &tokenizer, const Variables &variables); static AssignedVariable fromSAS(tokenize::Tokenizer<> &tokenizer, const Variable &variable); public: explicit AssignedVariable(const Variable &variable, const Value &value); const Variable &variable() const; const Value &value() const; private: AssignedVariable(); const Variable *m_variable; const Value *m_value; }; //////////////////////////////////////////////////////////////////////////////////////////////////// } } #endif