From c13e3539f27a64807e78dd463be205b71f72add4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Patrick=20L=C3=BChne?= Date: Sun, 22 May 2016 14:24:38 +0200 Subject: [PATCH] Introduced consistent aliases for vector types. --- include/plasp/sas/AssignedVariable.h | 8 +++++++- include/plasp/sas/AxiomRule.h | 7 ++++++- include/plasp/sas/Description.h | 16 ++++++++-------- include/plasp/sas/Effect.h | 8 +++++++- include/plasp/sas/Goal.h | 4 ++-- include/plasp/sas/InitialState.h | 4 ++-- include/plasp/sas/MutexGroup.h | 11 +++++++++-- include/plasp/sas/Operator.h | 9 +++++++-- include/plasp/sas/Value.h | 9 +++++---- include/plasp/sas/Variable.h | 7 ++++++- include/plasp/sas/VariableTransition.h | 7 ++++++- src/plasp/sas/AssignedVariable.cpp | 2 +- src/plasp/sas/Description.cpp | 8 ++++---- src/plasp/sas/Goal.cpp | 2 +- src/plasp/sas/InitialState.cpp | 2 +- src/plasp/sas/MutexGroup.cpp | 2 +- src/plasp/sas/Variable.cpp | 2 +- src/plasp/sas/VariableTransition.cpp | 2 +- 18 files changed, 75 insertions(+), 35 deletions(-) diff --git a/include/plasp/sas/AssignedVariable.h b/include/plasp/sas/AssignedVariable.h index 3f9d63f..982ddb0 100644 --- a/include/plasp/sas/AssignedVariable.h +++ b/include/plasp/sas/AssignedVariable.h @@ -2,6 +2,7 @@ #define __SAS__ASSIGNED_VARIABLE_H #include +#include #include #include @@ -17,10 +18,15 @@ namespace sas // //////////////////////////////////////////////////////////////////////////////////////////////////// +class AssignedVariable; +using AssignedVariables = std::vector; + +//////////////////////////////////////////////////////////////////////////////////////////////////// + class AssignedVariable { public: - static AssignedVariable fromSAS(std::istream &istream, const std::vector &variables); + static AssignedVariable fromSAS(std::istream &istream, const Variables &variables); static AssignedVariable fromSAS(std::istream &istream, const Variable &variable); public: diff --git a/include/plasp/sas/AxiomRule.h b/include/plasp/sas/AxiomRule.h index 01f0777..ff35e3c 100644 --- a/include/plasp/sas/AxiomRule.h +++ b/include/plasp/sas/AxiomRule.h @@ -17,10 +17,15 @@ namespace sas // //////////////////////////////////////////////////////////////////////////////////////////////////// +struct AxiomRule; +using AxiomRules = std::vector; + +//////////////////////////////////////////////////////////////////////////////////////////////////// + struct AxiomRule { using Condition = AssignedVariable; - using Conditions = std::vector; + using Conditions = AssignedVariables; Conditions conditions; Condition postcondition; diff --git a/include/plasp/sas/Description.h b/include/plasp/sas/Description.h index 65f05bb..f46675c 100644 --- a/include/plasp/sas/Description.h +++ b/include/plasp/sas/Description.h @@ -33,12 +33,12 @@ class Description public: bool usesActionCosts() const; - const std::vector &variables() const; - const std::vector &mutexGroups() const; + const Variables &variables() const; + const MutexGroups &mutexGroups() const; const InitialState &initialState() const; const Goal &goal() const; - const std::vector &operators() const; - const std::vector &axiomRules() const; + const Operators &operators() const; + const AxiomRules &axiomRules() const; void print(std::ostream &ostream) const; @@ -56,12 +56,12 @@ class Description bool m_usesActionCosts; - std::vector m_variables; - std::vector m_mutexGroups; + Variables m_variables; + MutexGroups m_mutexGroups; std::unique_ptr m_initialState; std::unique_ptr m_goal; - std::vector m_operators; - std::vector m_axiomRules; + Operators m_operators; + AxiomRules m_axiomRules; }; //////////////////////////////////////////////////////////////////////////////////////////////////// diff --git a/include/plasp/sas/Effect.h b/include/plasp/sas/Effect.h index f97db59..f165089 100644 --- a/include/plasp/sas/Effect.h +++ b/include/plasp/sas/Effect.h @@ -3,6 +3,7 @@ #include +#include #include namespace plasp @@ -16,10 +17,15 @@ namespace sas // //////////////////////////////////////////////////////////////////////////////////////////////////// +struct Effect; +using Effects = std::vector; + +//////////////////////////////////////////////////////////////////////////////////////////////////// + struct Effect { using Condition = AssignedVariable; - using Conditions = std::vector; + using Conditions = AssignedVariables; Conditions conditions; Condition postcondition; diff --git a/include/plasp/sas/Goal.h b/include/plasp/sas/Goal.h index 062db36..d4b05db 100644 --- a/include/plasp/sas/Goal.h +++ b/include/plasp/sas/Goal.h @@ -18,9 +18,9 @@ class Goal { public: using Fact = AssignedVariable; - using Facts = std::vector; + using Facts = AssignedVariables; - static Goal fromSAS(std::istream &istream, const std::vector &variables); + static Goal fromSAS(std::istream &istream, const Variables &variables); public: const Facts &facts() const; diff --git a/include/plasp/sas/InitialState.h b/include/plasp/sas/InitialState.h index 329855b..f1185e1 100644 --- a/include/plasp/sas/InitialState.h +++ b/include/plasp/sas/InitialState.h @@ -18,9 +18,9 @@ class InitialState { public: using Fact = AssignedVariable; - using Facts = std::vector; + using Facts = AssignedVariables; - static InitialState fromSAS(std::istream &istream, const std::vector &variables); + static InitialState fromSAS(std::istream &istream, const Variables &variables); public: const Facts &facts() const; diff --git a/include/plasp/sas/MutexGroup.h b/include/plasp/sas/MutexGroup.h index 0d19c26..66c9083 100644 --- a/include/plasp/sas/MutexGroup.h +++ b/include/plasp/sas/MutexGroup.h @@ -1,6 +1,8 @@ #ifndef __SAS__MUTEX_GROUP_H #define __SAS__MUTEX_GROUP_H +#include + #include namespace plasp @@ -14,13 +16,18 @@ namespace sas // //////////////////////////////////////////////////////////////////////////////////////////////////// +class MutexGroup; +using MutexGroups = std::vector; + +//////////////////////////////////////////////////////////////////////////////////////////////////// + class MutexGroup { public: using Fact = AssignedVariable; - using Facts = std::vector; + using Facts = AssignedVariables; - static MutexGroup fromSAS(std::istream &istream, const std::vector &variables); + static MutexGroup fromSAS(std::istream &istream, const Variables &variables); public: const Facts &facts() const; diff --git a/include/plasp/sas/Operator.h b/include/plasp/sas/Operator.h index b6f21b6..35186e3 100644 --- a/include/plasp/sas/Operator.h +++ b/include/plasp/sas/Operator.h @@ -4,6 +4,7 @@ #include #include +#include #include #include #include @@ -19,11 +20,15 @@ namespace sas // //////////////////////////////////////////////////////////////////////////////////////////////////// +struct Operator; +using Operators = std::vector; + +//////////////////////////////////////////////////////////////////////////////////////////////////// + struct Operator { using Condition = AssignedVariable; - using Conditions = std::vector; - using Effects = std::vector; + using Conditions = AssignedVariables; Predicate predicate; Conditions preconditions; diff --git a/include/plasp/sas/Value.h b/include/plasp/sas/Value.h index 668db0d..9658221 100644 --- a/include/plasp/sas/Value.h +++ b/include/plasp/sas/Value.h @@ -19,6 +19,11 @@ class Variable; // //////////////////////////////////////////////////////////////////////////////////////////////////// +struct Value; +using Values = std::vector; + +//////////////////////////////////////////////////////////////////////////////////////////////////// + struct Value { public: @@ -53,10 +58,6 @@ struct Value //////////////////////////////////////////////////////////////////////////////////////////////////// -using Values = std::vector; - -//////////////////////////////////////////////////////////////////////////////////////////////////// - } } diff --git a/include/plasp/sas/Variable.h b/include/plasp/sas/Variable.h index d02bf98..a553185 100644 --- a/include/plasp/sas/Variable.h +++ b/include/plasp/sas/Variable.h @@ -18,11 +18,16 @@ namespace sas // //////////////////////////////////////////////////////////////////////////////////////////////////// +class Variable; +using Variables = std::vector; + +//////////////////////////////////////////////////////////////////////////////////////////////////// + class Variable { public: static Variable fromSAS(std::istream &istream); - static const Variable &referenceFromSAS(std::istream &istream, const std::vector &variables); + static const Variable &referenceFromSAS(std::istream &istream, const Variables &variables); public: const std::string &name() const; diff --git a/include/plasp/sas/VariableTransition.h b/include/plasp/sas/VariableTransition.h index 57ee00c..7d1db74 100644 --- a/include/plasp/sas/VariableTransition.h +++ b/include/plasp/sas/VariableTransition.h @@ -17,10 +17,15 @@ namespace sas // //////////////////////////////////////////////////////////////////////////////////////////////////// +class VariableTransition; +using VariableTransitions = std::vector; + +//////////////////////////////////////////////////////////////////////////////////////////////////// + class VariableTransition { public: - static VariableTransition fromSAS(std::istream &istream, const std::vector &variables); + static VariableTransition fromSAS(std::istream &istream, const Variables &variables); public: const Variable &variable() const; diff --git a/src/plasp/sas/AssignedVariable.cpp b/src/plasp/sas/AssignedVariable.cpp index e22fcd8..3fa9806 100644 --- a/src/plasp/sas/AssignedVariable.cpp +++ b/src/plasp/sas/AssignedVariable.cpp @@ -33,7 +33,7 @@ AssignedVariable::AssignedVariable(const Variable &variable, const Value &value) //////////////////////////////////////////////////////////////////////////////////////////////////// -AssignedVariable AssignedVariable::fromSAS(std::istream &istream, const std::vector &variables) +AssignedVariable AssignedVariable::fromSAS(std::istream &istream, const Variables &variables) { AssignedVariable assignedVariable; diff --git a/src/plasp/sas/Description.cpp b/src/plasp/sas/Description.cpp index 8d1df82..accafda 100644 --- a/src/plasp/sas/Description.cpp +++ b/src/plasp/sas/Description.cpp @@ -69,14 +69,14 @@ bool Description::usesActionCosts() const //////////////////////////////////////////////////////////////////////////////////////////////////// -const std::vector &Description::variables() const +const Variables &Description::variables() const { return m_variables; } //////////////////////////////////////////////////////////////////////////////////////////////////// -const std::vector &Description::mutexGroups() const +const MutexGroups &Description::mutexGroups() const { return m_mutexGroups; } @@ -97,14 +97,14 @@ const Goal &Description::goal() const //////////////////////////////////////////////////////////////////////////////////////////////////// -const std::vector &Description::operators() const +const Operators &Description::operators() const { return m_operators; } //////////////////////////////////////////////////////////////////////////////////////////////////// -const std::vector &Description::axiomRules() const +const AxiomRules &Description::axiomRules() const { return m_axiomRules; } diff --git a/src/plasp/sas/Goal.cpp b/src/plasp/sas/Goal.cpp index a056a5f..ac666ba 100644 --- a/src/plasp/sas/Goal.cpp +++ b/src/plasp/sas/Goal.cpp @@ -15,7 +15,7 @@ namespace sas // //////////////////////////////////////////////////////////////////////////////////////////////////// -Goal Goal::fromSAS(std::istream &istream, const std::vector &variables) +Goal Goal::fromSAS(std::istream &istream, const Variables &variables) { Goal goal; diff --git a/src/plasp/sas/InitialState.cpp b/src/plasp/sas/InitialState.cpp index 13d87e1..3dfee83 100644 --- a/src/plasp/sas/InitialState.cpp +++ b/src/plasp/sas/InitialState.cpp @@ -15,7 +15,7 @@ namespace sas // //////////////////////////////////////////////////////////////////////////////////////////////////// -InitialState InitialState::fromSAS(std::istream &istream, const std::vector &variables) +InitialState InitialState::fromSAS(std::istream &istream, const Variables &variables) { InitialState initialState; diff --git a/src/plasp/sas/MutexGroup.cpp b/src/plasp/sas/MutexGroup.cpp index 701f771..bcea024 100644 --- a/src/plasp/sas/MutexGroup.cpp +++ b/src/plasp/sas/MutexGroup.cpp @@ -15,7 +15,7 @@ namespace sas // //////////////////////////////////////////////////////////////////////////////////////////////////// -MutexGroup MutexGroup::fromSAS(std::istream &istream, const std::vector &variables) +MutexGroup MutexGroup::fromSAS(std::istream &istream, const Variables &variables) { MutexGroup mutexGroup; diff --git a/src/plasp/sas/Variable.cpp b/src/plasp/sas/Variable.cpp index bfdf656..1f3275b 100644 --- a/src/plasp/sas/Variable.cpp +++ b/src/plasp/sas/Variable.cpp @@ -44,7 +44,7 @@ Variable Variable::fromSAS(std::istream &istream) //////////////////////////////////////////////////////////////////////////////////////////////////// -const Variable &Variable::referenceFromSAS(std::istream &istream, const std::vector &variables) +const Variable &Variable::referenceFromSAS(std::istream &istream, const Variables &variables) { const auto variableID = utils::parse(istream); diff --git a/src/plasp/sas/VariableTransition.cpp b/src/plasp/sas/VariableTransition.cpp index a530dea..0ce7c66 100644 --- a/src/plasp/sas/VariableTransition.cpp +++ b/src/plasp/sas/VariableTransition.cpp @@ -26,7 +26,7 @@ VariableTransition::VariableTransition() //////////////////////////////////////////////////////////////////////////////////////////////////// -VariableTransition VariableTransition::fromSAS(std::istream &istream, const std::vector &variables) +VariableTransition VariableTransition::fromSAS(std::istream &istream, const Variables &variables) { VariableTransition variableTransition;