From f1061e8df166901abd64b7540485401f79d6e728 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Villemot?= <sebastien@dynare.org> Date: Fri, 20 Mar 2020 16:38:43 +0100 Subject: [PATCH] Block decomposition: turn BlockType into an enum class --- src/CodeInterpreter.hh | 10 +++++----- src/DynamicModel.cc | 10 +++++----- src/ModelTree.hh | 8 ++++---- src/StaticModel.cc | 8 ++++---- 4 files changed, 18 insertions(+), 18 deletions(-) diff --git a/src/CodeInterpreter.hh b/src/CodeInterpreter.hh index 075c6e7f..4b9911c0 100644 --- a/src/CodeInterpreter.hh +++ b/src/CodeInterpreter.hh @@ -105,12 +105,12 @@ enum Tags }; -enum BlockType +enum class BlockType { - SIMULTANS, //!< Simultaneous time separable block - PROLOGUE, //!< Prologue block (one equation at the beginning, later merged) - EPILOGUE, //!< Epilogue block (one equation at the beginning, later merged) - SIMULTAN //!< Simultaneous time unseparable block + simultans, //!< Simultaneous time separable block + prologue, //!< Prologue block (one equation at the beginning, later merged) + epilogue, //!< Epilogue block (one equation at the beginning, later merged) + simultan //!< Simultaneous time unseparable block }; enum EquationType diff --git a/src/DynamicModel.cc b/src/DynamicModel.cc index 1d79f582..7af8eab9 100644 --- a/src/DynamicModel.cc +++ b/src/DynamicModel.cc @@ -431,19 +431,19 @@ DynamicModel::writeModelEquationsOrdered_M(const string &basename) const output << "function [residual, y, g1, g2, g3, b, varargout] = dynamic_" << block+1 << "(y, x, params, steady_state, periods, jacobian_eval, y_kmin, y_size, Periods)" << endl; BlockType block_type; if (simulation_type == SOLVE_TWO_BOUNDARIES_COMPLETE || simulation_type == SOLVE_TWO_BOUNDARIES_SIMPLE) - block_type = SIMULTAN; + block_type = BlockType::simultan; else if (simulation_type == SOLVE_FORWARD_COMPLETE || simulation_type == SOLVE_BACKWARD_COMPLETE) - block_type = SIMULTANS; + block_type = BlockType::simultans; else if ((simulation_type == SOLVE_FORWARD_SIMPLE || simulation_type == SOLVE_BACKWARD_SIMPLE || simulation_type == EVALUATE_BACKWARD || simulation_type == EVALUATE_FORWARD) && getBlockFirstEquation(block) < prologue) - block_type = PROLOGUE; + block_type = BlockType::prologue; else if ((simulation_type == SOLVE_FORWARD_SIMPLE || simulation_type == SOLVE_BACKWARD_SIMPLE || simulation_type == EVALUATE_BACKWARD || simulation_type == EVALUATE_FORWARD) && getBlockFirstEquation(block) >= equations.size() - epilogue) - block_type = EPILOGUE; + block_type = BlockType::epilogue; else - block_type = SIMULTANS; + block_type = BlockType::simultans; output << " % ////////////////////////////////////////////////////////////////////////" << endl << " % //" << string(" Block ").substr(int (log10(block + 1))) << block + 1 << " " << BlockType0(block_type) << " //" << endl diff --git a/src/ModelTree.hh b/src/ModelTree.hh index 0045fc2e..9203b79d 100644 --- a/src/ModelTree.hh +++ b/src/ModelTree.hh @@ -454,13 +454,13 @@ public: { switch (type) { - case SIMULTANS: + case BlockType::simultans: return "SIMULTANEOUS TIME SEPARABLE "; - case PROLOGUE: + case BlockType::prologue: return "PROLOGUE "; - case EPILOGUE: + case BlockType::epilogue: return "EPILOGUE "; - case SIMULTAN: + case BlockType::simultan: return "SIMULTANEOUS TIME UNSEPARABLE"; default: return "UNKNOWN "; diff --git a/src/StaticModel.cc b/src/StaticModel.cc index b0d49d41..b73030cd 100644 --- a/src/StaticModel.cc +++ b/src/StaticModel.cc @@ -312,17 +312,17 @@ StaticModel::writeModelEquationsOrdered_M(const string &basename) const BlockType block_type; if (simulation_type == SOLVE_FORWARD_COMPLETE || simulation_type == SOLVE_BACKWARD_COMPLETE) - block_type = SIMULTANS; + block_type = BlockType::simultans; else if ((simulation_type == SOLVE_FORWARD_SIMPLE || simulation_type == SOLVE_BACKWARD_SIMPLE || simulation_type == EVALUATE_BACKWARD || simulation_type == EVALUATE_FORWARD) && getBlockFirstEquation(block) < prologue) - block_type = PROLOGUE; + block_type = BlockType::prologue; else if ((simulation_type == SOLVE_FORWARD_SIMPLE || simulation_type == SOLVE_BACKWARD_SIMPLE || simulation_type == EVALUATE_BACKWARD || simulation_type == EVALUATE_FORWARD) && getBlockFirstEquation(block) >= equations.size() - epilogue) - block_type = EPILOGUE; + block_type = BlockType::epilogue; else - block_type = SIMULTANS; + block_type = BlockType::simultans; output << " % ////////////////////////////////////////////////////////////////////////" << endl << " % //" << string(" Block ").substr(int (log10(block + 1))) << block + 1 << " " << BlockType0(block_type) << " //" << endl -- GitLab