From b313a5010e34c33dd9f3aa540333752500229b9f Mon Sep 17 00:00:00 2001
From: Stephane Del Pino <stephane.delpino44@gmail.com>
Date: Wed, 10 Jun 2020 23:02:47 +0200
Subject: [PATCH] Remove useless RuntimeError class

---
 .../BuiltinFunctionProcessor.hpp              |  6 ++---
 src/language/utils/PugsFunctionAdapter.hpp    |  3 +--
 src/language/utils/RuntimeError.hpp           | 27 -------------------
 tests/CMakeLists.txt                          |  1 -
 tests/test_RuntimeError.cpp                   | 11 --------
 5 files changed, 4 insertions(+), 44 deletions(-)
 delete mode 100644 src/language/utils/RuntimeError.hpp
 delete mode 100644 tests/test_RuntimeError.cpp

diff --git a/src/language/node_processor/BuiltinFunctionProcessor.hpp b/src/language/node_processor/BuiltinFunctionProcessor.hpp
index 7a7397e31..6d688284b 100644
--- a/src/language/node_processor/BuiltinFunctionProcessor.hpp
+++ b/src/language/node_processor/BuiltinFunctionProcessor.hpp
@@ -5,7 +5,7 @@
 #include <language/node_processor/FunctionArgumentConverter.hpp>
 #include <language/node_processor/INodeProcessor.hpp>
 #include <language/utils/BuiltinFunctionEmbedder.hpp>
-#include <language/utils/RuntimeError.hpp>
+#include <utils/Exceptions.hpp>
 
 class BuiltinFunctionExpressionProcessor final : public INodeProcessor
 {
@@ -63,8 +63,8 @@ class BuiltinFunctionProcessor : public INodeProcessor
     try {
       return m_function_expression_processor->execute(context_exec_policy);
     }
-    catch (RuntimeError& e) {
-      throw parse_error(e.message(), {m_argument_node.begin()});
+    catch (NormalError& e) {
+      throw parse_error(e.what(), {m_argument_node.begin()});
     }
   }
 
diff --git a/src/language/utils/PugsFunctionAdapter.hpp b/src/language/utils/PugsFunctionAdapter.hpp
index 5e9a6cf76..262977cdf 100644
--- a/src/language/utils/PugsFunctionAdapter.hpp
+++ b/src/language/utils/PugsFunctionAdapter.hpp
@@ -5,7 +5,6 @@
 #include <language/ast/ASTNodeDataType.hpp>
 #include <language/node_processor/ExecutionPolicy.hpp>
 #include <language/utils/ASTNodeDataTypeTraits.hpp>
-#include <language/utils/RuntimeError.hpp>
 #include <language/utils/SymbolTable.hpp>
 #include <utils/Array.hpp>
 #include <utils/Exceptions.hpp>
@@ -158,7 +157,7 @@ class PugsFunctionAdapter<OutputType(InputType...)>
                     << rang::style::reset << '\n'
                     << "note: provided function " << rang::fgB::magenta << function.name() << ": "
                     << function.domainMappingNode().string() << rang::style::reset << std::ends;
-      throw RuntimeError(error_message.str());
+      throw NormalError(error_message.str());
     }
 
     return flatten_list;
diff --git a/src/language/utils/RuntimeError.hpp b/src/language/utils/RuntimeError.hpp
deleted file mode 100644
index b5e2c11a5..000000000
--- a/src/language/utils/RuntimeError.hpp
+++ /dev/null
@@ -1,27 +0,0 @@
-#ifndef RUNTIME_ERROR_HPP
-#define RUNTIME_ERROR_HPP
-
-#include <string>
-
-class RuntimeError
-{
- private:
-  std::string m_message;
-
- public:
-  const std::string&
-  message() const
-  {
-    return m_message;
-  }
-
-  RuntimeError(const std::string& message) : m_message{message} {}
-
-  RuntimeError()                    = delete;
-  RuntimeError(const RuntimeError&) = delete;
-  RuntimeError(RuntimeError&&)      = delete;
-
-  ~RuntimeError() = default;
-};
-
-#endif   // RUNTIME_ERROR_HPP
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index 042dca3f0..195aa699a 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -70,7 +70,6 @@ add_executable (unit_tests
   test_PCG.cpp
   test_PugsAssert.cpp
   test_RevisionInfo.cpp
-  test_RuntimeError.cpp
   test_SparseMatrixDescriptor.cpp
   test_SymbolTable.cpp
   test_TinyMatrix.cpp
diff --git a/tests/test_RuntimeError.cpp b/tests/test_RuntimeError.cpp
deleted file mode 100644
index cd1216cca..000000000
--- a/tests/test_RuntimeError.cpp
+++ /dev/null
@@ -1,11 +0,0 @@
-#include <catch2/catch.hpp>
-
-#include <language/utils/RuntimeError.hpp>
-
-// clazy:excludeall=non-pod-global-static
-
-TEST_CASE("RuntimeError", "[language]")
-{
-  RuntimeError e{"error message"};
-  REQUIRE(e.message() == "error message");
-}
-- 
GitLab