diff --git a/cmake/Coverage.cmake b/cmake/Coverage.cmake index 86852a75e..b962d7791 100644 --- a/cmake/Coverage.cmake +++ b/cmake/Coverage.cmake @@ -3,16 +3,16 @@ if(CMAKE_CXX_COMPILER_ID MATCHES ".*Clang") option(${PROJECT_NAME}_enable_coverage "Enable coverage reporting for gcc/clang" OFF) if(${PROJECT_NAME}_enable_coverage) - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fprofile-instr-generate -fcoverage-mapping -O0") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fprofile-instr-generate -fcoverage-mapping -O0 -g") add_custom_target( ${PROJECT_NAME}_coverage COMMAND ./bin/fintamath_tests COMMAND llvm-profdata merge -o merged.profdata *.profraw - COMMAND llvm-cov show --show-branches=count --ignore-filename-regex='tests|build|thirdparty' --instr-profile - merged.profdata bin/fintamath_tests > coverage.txt - COMMAND llvm-cov export --ignore-filename-regex='tests|build|thirdparty' --instr-profile merged.profdata - bin/fintamath_tests -format lcov > lcov.info + COMMAND llvm-cov show --show-branches=count --ignore-filename-regex='tests|build|thirdparty|MathObjectType.hpp' + --show-instantiations --instr-profile merged.profdata bin/fintamath_tests > coverage.txt + COMMAND llvm-cov export --ignore-filename-regex='tests|build|thirdparty|MathObjectType.hpp' --instr-profile + merged.profdata bin/fintamath_tests -format lcov > lcov.info COMMAND genhtml --branch-coverage lcov.info -o coverage DEPENDS ${PROJECT_NAME}_tests WORKING_DIRECTORY ${CMAKE_BINARY_DIR}) diff --git a/include/fintamath/core/CoreUtils.hpp b/include/fintamath/core/CoreUtils.hpp index d2dacce45..96b7eef1e 100644 --- a/include/fintamath/core/CoreUtils.hpp +++ b/include/fintamath/core/CoreUtils.hpp @@ -6,7 +6,7 @@ #include #include -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectBoundTypes.hpp" namespace fintamath { diff --git a/include/fintamath/core/IArithmetic.hpp b/include/fintamath/core/IArithmetic.hpp index 425882c5d..55f9b77cc 100644 --- a/include/fintamath/core/IArithmetic.hpp +++ b/include/fintamath/core/IArithmetic.hpp @@ -7,7 +7,7 @@ #include "fintamath/core/CoreUtils.hpp" #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/core/Parser.hpp" namespace fintamath { diff --git a/include/fintamath/core/IComparable.hpp b/include/fintamath/core/IComparable.hpp index 99e47e55b..dd07bb1b2 100644 --- a/include/fintamath/core/IComparable.hpp +++ b/include/fintamath/core/IComparable.hpp @@ -8,7 +8,7 @@ #include "fintamath/core/CoreUtils.hpp" #include "fintamath/core/IArithmetic.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/core/Parser.hpp" namespace fintamath { diff --git a/include/fintamath/core/IMathObject.hpp b/include/fintamath/core/IMathObject.hpp index cc4794d75..6a252df34 100644 --- a/include/fintamath/core/IMathObject.hpp +++ b/include/fintamath/core/IMathObject.hpp @@ -8,7 +8,7 @@ #include "fintamath/core/Converter.hpp" #include "fintamath/core/CoreUtils.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/core/Parser.hpp" namespace fintamath { diff --git a/include/fintamath/core/MathObjectBoundTypes.hpp b/include/fintamath/core/MathObjectBoundTypes.hpp new file mode 100644 index 000000000..3e17ba8de --- /dev/null +++ b/include/fintamath/core/MathObjectBoundTypes.hpp @@ -0,0 +1,63 @@ +#pragma once + +#include + +#include "fintamath/core/MathObjectType.hpp" + +namespace fintamath { + +bool isBaseOf(const MathObjectType &toType, const MathObjectType &fromType); + +namespace detail { + +class MathObjectBoundTypes final { + using enum MathObjectType::Id; + + using TypeIdToBoundTypeIdMap = std::unordered_map; + + static TypeIdToBoundTypeIdMap &getMap() { + static TypeIdToBoundTypeIdMap typeIdToBoundTypeIdMap{ + makeTypeIdPair(IMathObject, None), + makeTypeIdPair(IArithmetic, ILiteral), + makeTypeIdPair(IArithmetic, ILiteral), + makeTypeIdPair(IExpression, IComparable), + makeTypeIdPair(IUnaryExpression, IBinaryExpression), + makeTypeIdPair(IBinaryExpression, IPolynomExpression), + makeTypeIdPair(IPolynomExpression, IComparable), + makeTypeIdPair(IComparable, ILiteral), + makeTypeIdPair(INumber, ILiteral), + makeTypeIdPair(IInteger, ILiteral), + makeTypeIdPair(ILiteral, IFunction), + makeTypeIdPair(IConstant, IFunction), + makeTypeIdPair(IFunction, None), + makeTypeIdPair(IOperator, None), + }; + return typeIdToBoundTypeIdMap; + } + +public: + static void bindTypes(const MathObjectType &type, const MathObjectType &boundType) { + getMap().emplace(type.getId(), boundType.getId()); + } + + friend bool fintamath::isBaseOf(const MathObjectType &toType, const MathObjectType &fromType); + +private: + static std::pair makeTypeIdPair(const MathObjectType::Id lhs, const MathObjectType::Id rhs) { + return {static_cast(lhs), static_cast(rhs)}; + } +}; + +} + +inline bool isBaseOf(const MathObjectType &toType, const MathObjectType &fromType) { + const auto &map = detail::MathObjectBoundTypes::getMap(); + + if (const auto boundaries = map.find(toType.getId()); boundaries != map.end()) { + return fromType.getId() >= boundaries->first && fromType.getId() < boundaries->second; + } + + return toType == fromType; +} + +} diff --git a/include/fintamath/core/MathObjectTypes.hpp b/include/fintamath/core/MathObjectType.hpp similarity index 53% rename from include/fintamath/core/MathObjectTypes.hpp rename to include/fintamath/core/MathObjectType.hpp index 7e85ce4dc..807e51db7 100644 --- a/include/fintamath/core/MathObjectTypes.hpp +++ b/include/fintamath/core/MathObjectType.hpp @@ -4,10 +4,6 @@ #include #include #include -#include - -#include -#include #include "fintamath/config/Config.hpp" @@ -161,12 +157,12 @@ struct MathObjectType final { using enum Id; public: - constexpr MathObjectType(const size_t rhs, const std::string_view inName) + consteval MathObjectType(const size_t inId, const std::string_view inName) : name(inName), - id(rhs) { + id(inId) { } - constexpr MathObjectType(const Id inId, const std::string_view inName) + consteval MathObjectType(const Id inId, const std::string_view inName) : MathObjectType(static_cast(inId), inName) { } @@ -194,62 +190,8 @@ struct MathObjectType final { [[maybe_unused]] inline static const detail::Config config; }; -inline size_t hash_value(const MathObjectType &rhs) noexcept { - return boost::hash{}(rhs.getId()); -} - -bool isBaseOf(const MathObjectType &toType, const MathObjectType &fromType); - -namespace detail { - -class MathObjectBoundTypes final { - using enum MathObjectType::Id; - - using TypeIdToBoundTypeIdMap = std::unordered_map; - - static TypeIdToBoundTypeIdMap &getMap() { - static TypeIdToBoundTypeIdMap typeIdToBoundTypeIdMap{ - makeTypeIdPair(IMathObject, None), - makeTypeIdPair(IArithmetic, ILiteral), - makeTypeIdPair(IArithmetic, ILiteral), - makeTypeIdPair(IExpression, IComparable), - makeTypeIdPair(IUnaryExpression, IBinaryExpression), - makeTypeIdPair(IBinaryExpression, IPolynomExpression), - makeTypeIdPair(IPolynomExpression, IComparable), - makeTypeIdPair(IComparable, ILiteral), - makeTypeIdPair(INumber, ILiteral), - makeTypeIdPair(IInteger, ILiteral), - makeTypeIdPair(ILiteral, IFunction), - makeTypeIdPair(IConstant, IFunction), - makeTypeIdPair(IFunction, None), - makeTypeIdPair(IOperator, None), - }; - return typeIdToBoundTypeIdMap; - } - -public: - static void bindTypes(const MathObjectType &type, const MathObjectType &boundType) { - getMap().emplace(type.getId(), boundType.getId()); - } - - friend bool fintamath::isBaseOf(const MathObjectType &toType, const MathObjectType &fromType); - -private: - static std::pair makeTypeIdPair(const MathObjectType::Id lhs, const MathObjectType::Id rhs) { - return {static_cast(lhs), static_cast(rhs)}; - } -}; - -} - -inline bool isBaseOf(const MathObjectType &toType, const MathObjectType &fromType) { - const auto &map = detail::MathObjectBoundTypes::getMap(); - - if (const auto boundaries = map.find(toType.getId()); boundaries != map.end()) { - return fromType.getId() >= boundaries->first && fromType.getId() < boundaries->second; - } - - return toType == fromType; +constexpr size_t hash_value(const MathObjectType &rhs) noexcept { + return rhs.getId(); } } diff --git a/include/fintamath/core/MultiMethod.hpp b/include/fintamath/core/MultiMethod.hpp index 0300e6816..c267a23ab 100644 --- a/include/fintamath/core/MultiMethod.hpp +++ b/include/fintamath/core/MultiMethod.hpp @@ -7,7 +7,7 @@ #include #include "fintamath/core/CoreUtils.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" namespace fintamath::detail { diff --git a/include/fintamath/expressions/Expression.hpp b/include/fintamath/expressions/Expression.hpp index 1557cd645..976a3e56f 100644 --- a/include/fintamath/expressions/Expression.hpp +++ b/include/fintamath/expressions/Expression.hpp @@ -11,7 +11,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/core/Parser.hpp" #include "fintamath/core/Tokenizer.hpp" #include "fintamath/expressions/IExpression.hpp" diff --git a/include/fintamath/expressions/ExpressionUtils.hpp b/include/fintamath/expressions/ExpressionUtils.hpp index 4a244ee9f..277b34de9 100644 --- a/include/fintamath/expressions/ExpressionUtils.hpp +++ b/include/fintamath/expressions/ExpressionUtils.hpp @@ -6,7 +6,7 @@ #include #include -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/IFunction.hpp" #include "fintamath/functions/IOperator.hpp" diff --git a/include/fintamath/expressions/IExpression.hpp b/include/fintamath/expressions/IExpression.hpp index d326b24c9..1cdee7373 100644 --- a/include/fintamath/expressions/IExpression.hpp +++ b/include/fintamath/expressions/IExpression.hpp @@ -8,7 +8,7 @@ #include "fintamath/core/IArithmetic.hpp" #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/core/Parser.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/expressions/interfaces/IBinaryExpression.hpp b/include/fintamath/expressions/interfaces/IBinaryExpression.hpp index 4e6983f3b..247cc364a 100644 --- a/include/fintamath/expressions/interfaces/IBinaryExpression.hpp +++ b/include/fintamath/expressions/interfaces/IBinaryExpression.hpp @@ -6,7 +6,7 @@ #include #include -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/expressions/IExpression.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/expressions/interfaces/IPolynomExpression.hpp b/include/fintamath/expressions/interfaces/IPolynomExpression.hpp index ee95107a3..8f89c4517 100644 --- a/include/fintamath/expressions/interfaces/IPolynomExpression.hpp +++ b/include/fintamath/expressions/interfaces/IPolynomExpression.hpp @@ -7,7 +7,7 @@ #include #include -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/expressions/IExpression.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/expressions/interfaces/IUnaryExpression.hpp b/include/fintamath/expressions/interfaces/IUnaryExpression.hpp index d0d4eb534..81170fbef 100644 --- a/include/fintamath/expressions/interfaces/IUnaryExpression.hpp +++ b/include/fintamath/expressions/interfaces/IUnaryExpression.hpp @@ -6,7 +6,7 @@ #include #include -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/expressions/IExpression.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/FunctionArguments.hpp b/include/fintamath/functions/FunctionArguments.hpp index c71251bd8..4f0ef188d 100644 --- a/include/fintamath/functions/FunctionArguments.hpp +++ b/include/fintamath/functions/FunctionArguments.hpp @@ -4,7 +4,7 @@ #include #include -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" namespace fintamath { diff --git a/include/fintamath/functions/IFunction.hpp b/include/fintamath/functions/IFunction.hpp index 422f2a72d..cf6616861 100644 --- a/include/fintamath/functions/IFunction.hpp +++ b/include/fintamath/functions/IFunction.hpp @@ -7,7 +7,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/core/Parser.hpp" #include "fintamath/exceptions/UndefinedException.hpp" #include "fintamath/functions/FunctionArguments.hpp" diff --git a/include/fintamath/functions/IOperator.hpp b/include/fintamath/functions/IOperator.hpp index 9db3c4444..78ae056fe 100644 --- a/include/fintamath/functions/IOperator.hpp +++ b/include/fintamath/functions/IOperator.hpp @@ -6,7 +6,7 @@ #include #include -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/core/Parser.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/arithmetic/Abs.hpp b/include/fintamath/functions/arithmetic/Abs.hpp index 0dbf03c17..f09280548 100644 --- a/include/fintamath/functions/arithmetic/Abs.hpp +++ b/include/fintamath/functions/arithmetic/Abs.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/arithmetic/Add.hpp b/include/fintamath/functions/arithmetic/Add.hpp index bc5cf5671..c440491d6 100644 --- a/include/fintamath/functions/arithmetic/Add.hpp +++ b/include/fintamath/functions/arithmetic/Add.hpp @@ -5,7 +5,7 @@ #include "fintamath/core/IArithmetic.hpp" #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IOperator.hpp" diff --git a/include/fintamath/functions/arithmetic/Div.hpp b/include/fintamath/functions/arithmetic/Div.hpp index ba3d355c4..d17536b35 100644 --- a/include/fintamath/functions/arithmetic/Div.hpp +++ b/include/fintamath/functions/arithmetic/Div.hpp @@ -5,7 +5,7 @@ #include "fintamath/core/IArithmetic.hpp" #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IOperator.hpp" diff --git a/include/fintamath/functions/arithmetic/Frac.hpp b/include/fintamath/functions/arithmetic/Frac.hpp index c5624129b..56b460211 100644 --- a/include/fintamath/functions/arithmetic/Frac.hpp +++ b/include/fintamath/functions/arithmetic/Frac.hpp @@ -5,7 +5,7 @@ #include "fintamath/core/IArithmetic.hpp" #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/arithmetic/FracMixed.hpp b/include/fintamath/functions/arithmetic/FracMixed.hpp index a83913f1c..3274dc8b4 100644 --- a/include/fintamath/functions/arithmetic/FracMixed.hpp +++ b/include/fintamath/functions/arithmetic/FracMixed.hpp @@ -5,7 +5,7 @@ #include "fintamath/core/IArithmetic.hpp" #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/arithmetic/Mul.hpp b/include/fintamath/functions/arithmetic/Mul.hpp index a881d7234..49a8c84ac 100644 --- a/include/fintamath/functions/arithmetic/Mul.hpp +++ b/include/fintamath/functions/arithmetic/Mul.hpp @@ -5,7 +5,7 @@ #include "fintamath/core/IArithmetic.hpp" #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IOperator.hpp" diff --git a/include/fintamath/functions/arithmetic/Neg.hpp b/include/fintamath/functions/arithmetic/Neg.hpp index 12976d478..af9c18109 100644 --- a/include/fintamath/functions/arithmetic/Neg.hpp +++ b/include/fintamath/functions/arithmetic/Neg.hpp @@ -5,7 +5,7 @@ #include "fintamath/core/IArithmetic.hpp" #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IOperator.hpp" diff --git a/include/fintamath/functions/arithmetic/Sign.hpp b/include/fintamath/functions/arithmetic/Sign.hpp index fda46763a..95854bb2b 100644 --- a/include/fintamath/functions/arithmetic/Sign.hpp +++ b/include/fintamath/functions/arithmetic/Sign.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/arithmetic/Sub.hpp b/include/fintamath/functions/arithmetic/Sub.hpp index de949c9fb..346eb18fd 100644 --- a/include/fintamath/functions/arithmetic/Sub.hpp +++ b/include/fintamath/functions/arithmetic/Sub.hpp @@ -5,7 +5,7 @@ #include "fintamath/core/IArithmetic.hpp" #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IOperator.hpp" diff --git a/include/fintamath/functions/arithmetic/UnaryPlus.hpp b/include/fintamath/functions/arithmetic/UnaryPlus.hpp index ecf886a18..58502b53a 100644 --- a/include/fintamath/functions/arithmetic/UnaryPlus.hpp +++ b/include/fintamath/functions/arithmetic/UnaryPlus.hpp @@ -5,7 +5,7 @@ #include "fintamath/core/IArithmetic.hpp" #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/IOperator.hpp" diff --git a/include/fintamath/functions/calculus/Derivative.hpp b/include/fintamath/functions/calculus/Derivative.hpp index d552dc197..fc2c64deb 100644 --- a/include/fintamath/functions/calculus/Derivative.hpp +++ b/include/fintamath/functions/calculus/Derivative.hpp @@ -5,7 +5,7 @@ #include "fintamath/core/IComparable.hpp" #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/calculus/Integral.hpp b/include/fintamath/functions/calculus/Integral.hpp index 594930972..3afccac89 100644 --- a/include/fintamath/functions/calculus/Integral.hpp +++ b/include/fintamath/functions/calculus/Integral.hpp @@ -5,7 +5,7 @@ #include "fintamath/core/IComparable.hpp" #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/calculus/Max.hpp b/include/fintamath/functions/calculus/Max.hpp index 10c609bd7..df1fac6e5 100644 --- a/include/fintamath/functions/calculus/Max.hpp +++ b/include/fintamath/functions/calculus/Max.hpp @@ -5,7 +5,7 @@ #include "fintamath/core/IComparable.hpp" #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/calculus/Min.hpp b/include/fintamath/functions/calculus/Min.hpp index 788da1425..de5652a26 100644 --- a/include/fintamath/functions/calculus/Min.hpp +++ b/include/fintamath/functions/calculus/Min.hpp @@ -5,7 +5,7 @@ #include "fintamath/core/IComparable.hpp" #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/comparison/Eqv.hpp b/include/fintamath/functions/comparison/Eqv.hpp index 5fae15f0b..bb759a0bd 100644 --- a/include/fintamath/functions/comparison/Eqv.hpp +++ b/include/fintamath/functions/comparison/Eqv.hpp @@ -5,7 +5,7 @@ #include "fintamath/core/IComparable.hpp" #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IOperator.hpp" diff --git a/include/fintamath/functions/comparison/Less.hpp b/include/fintamath/functions/comparison/Less.hpp index 0f58dcbb8..533f127ce 100644 --- a/include/fintamath/functions/comparison/Less.hpp +++ b/include/fintamath/functions/comparison/Less.hpp @@ -5,7 +5,7 @@ #include "fintamath/core/IComparable.hpp" #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IOperator.hpp" diff --git a/include/fintamath/functions/comparison/LessEqv.hpp b/include/fintamath/functions/comparison/LessEqv.hpp index 903145b25..2444b8b6c 100644 --- a/include/fintamath/functions/comparison/LessEqv.hpp +++ b/include/fintamath/functions/comparison/LessEqv.hpp @@ -5,7 +5,7 @@ #include "fintamath/core/IComparable.hpp" #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IOperator.hpp" diff --git a/include/fintamath/functions/comparison/More.hpp b/include/fintamath/functions/comparison/More.hpp index af1da6089..f24b1df74 100644 --- a/include/fintamath/functions/comparison/More.hpp +++ b/include/fintamath/functions/comparison/More.hpp @@ -5,7 +5,7 @@ #include "fintamath/core/IComparable.hpp" #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IOperator.hpp" diff --git a/include/fintamath/functions/comparison/MoreEqv.hpp b/include/fintamath/functions/comparison/MoreEqv.hpp index 2a8d4e407..186282c85 100644 --- a/include/fintamath/functions/comparison/MoreEqv.hpp +++ b/include/fintamath/functions/comparison/MoreEqv.hpp @@ -5,7 +5,7 @@ #include "fintamath/core/IComparable.hpp" #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IOperator.hpp" diff --git a/include/fintamath/functions/comparison/Neqv.hpp b/include/fintamath/functions/comparison/Neqv.hpp index 3d1bd9a83..e00788abd 100644 --- a/include/fintamath/functions/comparison/Neqv.hpp +++ b/include/fintamath/functions/comparison/Neqv.hpp @@ -5,7 +5,7 @@ #include "fintamath/core/IComparable.hpp" #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IOperator.hpp" diff --git a/include/fintamath/functions/hyperbolic/Acosh.hpp b/include/fintamath/functions/hyperbolic/Acosh.hpp index 224bf382e..d2dbb5175 100644 --- a/include/fintamath/functions/hyperbolic/Acosh.hpp +++ b/include/fintamath/functions/hyperbolic/Acosh.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/hyperbolic/Acoth.hpp b/include/fintamath/functions/hyperbolic/Acoth.hpp index 1efae4f27..3bff2f76a 100644 --- a/include/fintamath/functions/hyperbolic/Acoth.hpp +++ b/include/fintamath/functions/hyperbolic/Acoth.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/hyperbolic/Acsch.hpp b/include/fintamath/functions/hyperbolic/Acsch.hpp index 9b663821d..e5247dcd4 100644 --- a/include/fintamath/functions/hyperbolic/Acsch.hpp +++ b/include/fintamath/functions/hyperbolic/Acsch.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/hyperbolic/Asech.hpp b/include/fintamath/functions/hyperbolic/Asech.hpp index 75e21f02e..751a122c4 100644 --- a/include/fintamath/functions/hyperbolic/Asech.hpp +++ b/include/fintamath/functions/hyperbolic/Asech.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/hyperbolic/Asinh.hpp b/include/fintamath/functions/hyperbolic/Asinh.hpp index c1ab4e908..9b378346d 100644 --- a/include/fintamath/functions/hyperbolic/Asinh.hpp +++ b/include/fintamath/functions/hyperbolic/Asinh.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/hyperbolic/Atanh.hpp b/include/fintamath/functions/hyperbolic/Atanh.hpp index 1d14e6885..8f642ac9f 100644 --- a/include/fintamath/functions/hyperbolic/Atanh.hpp +++ b/include/fintamath/functions/hyperbolic/Atanh.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/hyperbolic/Cosh.hpp b/include/fintamath/functions/hyperbolic/Cosh.hpp index 2dd97cd75..d2559df27 100644 --- a/include/fintamath/functions/hyperbolic/Cosh.hpp +++ b/include/fintamath/functions/hyperbolic/Cosh.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/hyperbolic/Coth.hpp b/include/fintamath/functions/hyperbolic/Coth.hpp index 251ed3d3a..217839289 100644 --- a/include/fintamath/functions/hyperbolic/Coth.hpp +++ b/include/fintamath/functions/hyperbolic/Coth.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/hyperbolic/Csch.hpp b/include/fintamath/functions/hyperbolic/Csch.hpp index 58b6c25fe..e6537f410 100644 --- a/include/fintamath/functions/hyperbolic/Csch.hpp +++ b/include/fintamath/functions/hyperbolic/Csch.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/hyperbolic/Sech.hpp b/include/fintamath/functions/hyperbolic/Sech.hpp index ba8229a00..1fe8ae655 100644 --- a/include/fintamath/functions/hyperbolic/Sech.hpp +++ b/include/fintamath/functions/hyperbolic/Sech.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/hyperbolic/Sinh.hpp b/include/fintamath/functions/hyperbolic/Sinh.hpp index 4f3d593ae..c512f30e8 100644 --- a/include/fintamath/functions/hyperbolic/Sinh.hpp +++ b/include/fintamath/functions/hyperbolic/Sinh.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/hyperbolic/Tanh.hpp b/include/fintamath/functions/hyperbolic/Tanh.hpp index 2e7c07d0e..3ea28aafe 100644 --- a/include/fintamath/functions/hyperbolic/Tanh.hpp +++ b/include/fintamath/functions/hyperbolic/Tanh.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/logarithms/Lb.hpp b/include/fintamath/functions/logarithms/Lb.hpp index ee4feba69..fc8427a77 100644 --- a/include/fintamath/functions/logarithms/Lb.hpp +++ b/include/fintamath/functions/logarithms/Lb.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/logarithms/Lg.hpp b/include/fintamath/functions/logarithms/Lg.hpp index a7be7faa4..57986f99f 100644 --- a/include/fintamath/functions/logarithms/Lg.hpp +++ b/include/fintamath/functions/logarithms/Lg.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/logarithms/Ln.hpp b/include/fintamath/functions/logarithms/Ln.hpp index 581dfb4d7..50ede8bcf 100644 --- a/include/fintamath/functions/logarithms/Ln.hpp +++ b/include/fintamath/functions/logarithms/Ln.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/logarithms/Log.hpp b/include/fintamath/functions/logarithms/Log.hpp index 28d89d5c7..bd585c4dd 100644 --- a/include/fintamath/functions/logarithms/Log.hpp +++ b/include/fintamath/functions/logarithms/Log.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/logic/And.hpp b/include/fintamath/functions/logic/And.hpp index 9e789b628..fd15849c6 100644 --- a/include/fintamath/functions/logic/And.hpp +++ b/include/fintamath/functions/logic/And.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IOperator.hpp" diff --git a/include/fintamath/functions/logic/Equiv.hpp b/include/fintamath/functions/logic/Equiv.hpp index bfe9f444d..72985223f 100644 --- a/include/fintamath/functions/logic/Equiv.hpp +++ b/include/fintamath/functions/logic/Equiv.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IOperator.hpp" diff --git a/include/fintamath/functions/logic/Impl.hpp b/include/fintamath/functions/logic/Impl.hpp index a528dd951..8b1321fcf 100644 --- a/include/fintamath/functions/logic/Impl.hpp +++ b/include/fintamath/functions/logic/Impl.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IOperator.hpp" diff --git a/include/fintamath/functions/logic/Nequiv.hpp b/include/fintamath/functions/logic/Nequiv.hpp index 5a4fa889d..ee35f0d86 100644 --- a/include/fintamath/functions/logic/Nequiv.hpp +++ b/include/fintamath/functions/logic/Nequiv.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IOperator.hpp" diff --git a/include/fintamath/functions/logic/Not.hpp b/include/fintamath/functions/logic/Not.hpp index 91630af6b..7074087c3 100644 --- a/include/fintamath/functions/logic/Not.hpp +++ b/include/fintamath/functions/logic/Not.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IOperator.hpp" diff --git a/include/fintamath/functions/logic/Or.hpp b/include/fintamath/functions/logic/Or.hpp index 70c33466d..49c97f146 100644 --- a/include/fintamath/functions/logic/Or.hpp +++ b/include/fintamath/functions/logic/Or.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IOperator.hpp" diff --git a/include/fintamath/functions/ntheory/Ceil.hpp b/include/fintamath/functions/ntheory/Ceil.hpp index a4fe245c2..0920c05ef 100644 --- a/include/fintamath/functions/ntheory/Ceil.hpp +++ b/include/fintamath/functions/ntheory/Ceil.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/ntheory/Floor.hpp b/include/fintamath/functions/ntheory/Floor.hpp index b098dac5c..cd0ed71e2 100644 --- a/include/fintamath/functions/ntheory/Floor.hpp +++ b/include/fintamath/functions/ntheory/Floor.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/ntheory/Mod.hpp b/include/fintamath/functions/ntheory/Mod.hpp index 06a11aa26..51cdf8728 100644 --- a/include/fintamath/functions/ntheory/Mod.hpp +++ b/include/fintamath/functions/ntheory/Mod.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IOperator.hpp" diff --git a/include/fintamath/functions/other/Comma.hpp b/include/fintamath/functions/other/Comma.hpp index 374f5715f..5ea716b44 100644 --- a/include/fintamath/functions/other/Comma.hpp +++ b/include/fintamath/functions/other/Comma.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IOperator.hpp" diff --git a/include/fintamath/functions/other/Deg.hpp b/include/fintamath/functions/other/Deg.hpp index a9b58f25b..6e8506df8 100644 --- a/include/fintamath/functions/other/Deg.hpp +++ b/include/fintamath/functions/other/Deg.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IOperator.hpp" diff --git a/include/fintamath/functions/other/Factorial.hpp b/include/fintamath/functions/other/Factorial.hpp index 559e32b38..3214be448 100644 --- a/include/fintamath/functions/other/Factorial.hpp +++ b/include/fintamath/functions/other/Factorial.hpp @@ -6,7 +6,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IOperator.hpp" diff --git a/include/fintamath/functions/other/Index.hpp b/include/fintamath/functions/other/Index.hpp index 0a42ddf80..83c467cc7 100644 --- a/include/fintamath/functions/other/Index.hpp +++ b/include/fintamath/functions/other/Index.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IOperator.hpp" diff --git a/include/fintamath/functions/other/Percent.hpp b/include/fintamath/functions/other/Percent.hpp index 23ddc065a..4243de4e9 100644 --- a/include/fintamath/functions/other/Percent.hpp +++ b/include/fintamath/functions/other/Percent.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IOperator.hpp" diff --git a/include/fintamath/functions/powers/Exp.hpp b/include/fintamath/functions/powers/Exp.hpp index 8cb335fcb..0181c5f7f 100644 --- a/include/fintamath/functions/powers/Exp.hpp +++ b/include/fintamath/functions/powers/Exp.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/powers/Pow.hpp b/include/fintamath/functions/powers/Pow.hpp index d663d0020..e36058302 100644 --- a/include/fintamath/functions/powers/Pow.hpp +++ b/include/fintamath/functions/powers/Pow.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IOperator.hpp" diff --git a/include/fintamath/functions/powers/PowFunction.hpp b/include/fintamath/functions/powers/PowFunction.hpp index cfbe3eff6..d255a54fe 100644 --- a/include/fintamath/functions/powers/PowFunction.hpp +++ b/include/fintamath/functions/powers/PowFunction.hpp @@ -5,7 +5,7 @@ #include "fintamath/core/IArithmetic.hpp" #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/powers/Root.hpp b/include/fintamath/functions/powers/Root.hpp index 4a66e8d6b..bba7834e8 100644 --- a/include/fintamath/functions/powers/Root.hpp +++ b/include/fintamath/functions/powers/Root.hpp @@ -5,7 +5,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/powers/Sqr.hpp b/include/fintamath/functions/powers/Sqr.hpp index f9af885a2..0d4a16df3 100644 --- a/include/fintamath/functions/powers/Sqr.hpp +++ b/include/fintamath/functions/powers/Sqr.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/powers/Sqrt.hpp b/include/fintamath/functions/powers/Sqrt.hpp index a379d2635..628a58526 100644 --- a/include/fintamath/functions/powers/Sqrt.hpp +++ b/include/fintamath/functions/powers/Sqrt.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/trigonometry/Acos.hpp b/include/fintamath/functions/trigonometry/Acos.hpp index 35d6951a7..f7cc32c53 100644 --- a/include/fintamath/functions/trigonometry/Acos.hpp +++ b/include/fintamath/functions/trigonometry/Acos.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/trigonometry/Acot.hpp b/include/fintamath/functions/trigonometry/Acot.hpp index b1eb3a890..8cb355c5f 100644 --- a/include/fintamath/functions/trigonometry/Acot.hpp +++ b/include/fintamath/functions/trigonometry/Acot.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/trigonometry/Acsc.hpp b/include/fintamath/functions/trigonometry/Acsc.hpp index 031e64b18..172ea589c 100644 --- a/include/fintamath/functions/trigonometry/Acsc.hpp +++ b/include/fintamath/functions/trigonometry/Acsc.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/trigonometry/Asec.hpp b/include/fintamath/functions/trigonometry/Asec.hpp index 7497ed5bf..a54614057 100644 --- a/include/fintamath/functions/trigonometry/Asec.hpp +++ b/include/fintamath/functions/trigonometry/Asec.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/trigonometry/Asin.hpp b/include/fintamath/functions/trigonometry/Asin.hpp index d751a1549..0c9cc140d 100644 --- a/include/fintamath/functions/trigonometry/Asin.hpp +++ b/include/fintamath/functions/trigonometry/Asin.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/trigonometry/Atan.hpp b/include/fintamath/functions/trigonometry/Atan.hpp index 7c64d8086..5020409f8 100644 --- a/include/fintamath/functions/trigonometry/Atan.hpp +++ b/include/fintamath/functions/trigonometry/Atan.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/trigonometry/Cos.hpp b/include/fintamath/functions/trigonometry/Cos.hpp index 1106bb494..e9f971511 100644 --- a/include/fintamath/functions/trigonometry/Cos.hpp +++ b/include/fintamath/functions/trigonometry/Cos.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/trigonometry/Cot.hpp b/include/fintamath/functions/trigonometry/Cot.hpp index f983c13b0..dc5296204 100644 --- a/include/fintamath/functions/trigonometry/Cot.hpp +++ b/include/fintamath/functions/trigonometry/Cot.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/trigonometry/Csc.hpp b/include/fintamath/functions/trigonometry/Csc.hpp index 54a64fa3e..2f79ca97b 100644 --- a/include/fintamath/functions/trigonometry/Csc.hpp +++ b/include/fintamath/functions/trigonometry/Csc.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/trigonometry/Sec.hpp b/include/fintamath/functions/trigonometry/Sec.hpp index 8e7f6b2bf..406ab3bd7 100644 --- a/include/fintamath/functions/trigonometry/Sec.hpp +++ b/include/fintamath/functions/trigonometry/Sec.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/trigonometry/Sin.hpp b/include/fintamath/functions/trigonometry/Sin.hpp index 1678f074b..fde454889 100644 --- a/include/fintamath/functions/trigonometry/Sin.hpp +++ b/include/fintamath/functions/trigonometry/Sin.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/functions/trigonometry/Tan.hpp b/include/fintamath/functions/trigonometry/Tan.hpp index feba54a42..6c712d748 100644 --- a/include/fintamath/functions/trigonometry/Tan.hpp +++ b/include/fintamath/functions/trigonometry/Tan.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/FunctionUtils.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/include/fintamath/literals/Boolean.hpp b/include/fintamath/literals/Boolean.hpp index 2e4eaf39b..021d164d9 100644 --- a/include/fintamath/literals/Boolean.hpp +++ b/include/fintamath/literals/Boolean.hpp @@ -2,7 +2,7 @@ #include -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/literals/ILiteral.hpp" namespace fintamath { diff --git a/include/fintamath/literals/ILiteral.hpp b/include/fintamath/literals/ILiteral.hpp index 40eb0feaa..7a8fc7726 100644 --- a/include/fintamath/literals/ILiteral.hpp +++ b/include/fintamath/literals/ILiteral.hpp @@ -6,7 +6,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/core/Parser.hpp" namespace fintamath { diff --git a/include/fintamath/literals/Variable.hpp b/include/fintamath/literals/Variable.hpp index 553d7dd81..3ae8ed9fc 100644 --- a/include/fintamath/literals/Variable.hpp +++ b/include/fintamath/literals/Variable.hpp @@ -2,7 +2,7 @@ #include -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/literals/ILiteral.hpp" #include "fintamath/numbers/Integer.hpp" diff --git a/include/fintamath/literals/constants/ComplexInf.hpp b/include/fintamath/literals/constants/ComplexInf.hpp index fa6fba957..47ca70050 100644 --- a/include/fintamath/literals/constants/ComplexInf.hpp +++ b/include/fintamath/literals/constants/ComplexInf.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/literals/constants/IConstant.hpp" #include "fintamath/numbers/INumber.hpp" diff --git a/include/fintamath/literals/constants/E.hpp b/include/fintamath/literals/constants/E.hpp index 25edfcf39..7c5fa17b6 100644 --- a/include/fintamath/literals/constants/E.hpp +++ b/include/fintamath/literals/constants/E.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/literals/constants/IConstant.hpp" #include "fintamath/numbers/Real.hpp" diff --git a/include/fintamath/literals/constants/False.hpp b/include/fintamath/literals/constants/False.hpp index 325476bb4..1967ae0fe 100644 --- a/include/fintamath/literals/constants/False.hpp +++ b/include/fintamath/literals/constants/False.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/literals/Boolean.hpp" #include "fintamath/literals/constants/IConstant.hpp" diff --git a/include/fintamath/literals/constants/I.hpp b/include/fintamath/literals/constants/I.hpp index ed80a6c47..292283ea6 100644 --- a/include/fintamath/literals/constants/I.hpp +++ b/include/fintamath/literals/constants/I.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/literals/constants/IConstant.hpp" #include "fintamath/numbers/Complex.hpp" diff --git a/include/fintamath/literals/constants/IConstant.hpp b/include/fintamath/literals/constants/IConstant.hpp index eb9dfbb29..23bf67d5a 100644 --- a/include/fintamath/literals/constants/IConstant.hpp +++ b/include/fintamath/literals/constants/IConstant.hpp @@ -5,7 +5,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/core/Parser.hpp" #include "fintamath/literals/ILiteral.hpp" diff --git a/include/fintamath/literals/constants/Inf.hpp b/include/fintamath/literals/constants/Inf.hpp index 56185e81e..fab3e282a 100644 --- a/include/fintamath/literals/constants/Inf.hpp +++ b/include/fintamath/literals/constants/Inf.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/literals/constants/IConstant.hpp" #include "fintamath/numbers/INumber.hpp" diff --git a/include/fintamath/literals/constants/NegInf.hpp b/include/fintamath/literals/constants/NegInf.hpp index 1cd4690b8..5486eac4b 100644 --- a/include/fintamath/literals/constants/NegInf.hpp +++ b/include/fintamath/literals/constants/NegInf.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/literals/constants/IConstant.hpp" #include "fintamath/numbers/INumber.hpp" diff --git a/include/fintamath/literals/constants/Pi.hpp b/include/fintamath/literals/constants/Pi.hpp index fea3ea654..56f2cc23b 100644 --- a/include/fintamath/literals/constants/Pi.hpp +++ b/include/fintamath/literals/constants/Pi.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/literals/constants/IConstant.hpp" #include "fintamath/numbers/Real.hpp" diff --git a/include/fintamath/literals/constants/True.hpp b/include/fintamath/literals/constants/True.hpp index 0fb949b25..0be168c10 100644 --- a/include/fintamath/literals/constants/True.hpp +++ b/include/fintamath/literals/constants/True.hpp @@ -4,7 +4,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/literals/Boolean.hpp" #include "fintamath/literals/constants/IConstant.hpp" diff --git a/include/fintamath/literals/constants/Undefined.hpp b/include/fintamath/literals/constants/Undefined.hpp index 2d40f14f7..4959cedc2 100644 --- a/include/fintamath/literals/constants/Undefined.hpp +++ b/include/fintamath/literals/constants/Undefined.hpp @@ -5,7 +5,7 @@ #include "fintamath/core/IArithmetic.hpp" #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/literals/constants/IConstant.hpp" namespace fintamath { diff --git a/include/fintamath/numbers/Complex.hpp b/include/fintamath/numbers/Complex.hpp index 2494b7e4f..b4188d3ed 100644 --- a/include/fintamath/numbers/Complex.hpp +++ b/include/fintamath/numbers/Complex.hpp @@ -6,7 +6,7 @@ #include #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/numbers/INumber.hpp" #include "fintamath/numbers/Integer.hpp" #include "fintamath/numbers/Rational.hpp" diff --git a/include/fintamath/numbers/IInteger.hpp b/include/fintamath/numbers/IInteger.hpp index 627eb29de..7a6eac8ba 100644 --- a/include/fintamath/numbers/IInteger.hpp +++ b/include/fintamath/numbers/IInteger.hpp @@ -5,7 +5,7 @@ #include #include "fintamath/core/CoreUtils.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/core/Parser.hpp" #include "fintamath/numbers/INumber.hpp" diff --git a/include/fintamath/numbers/INumber.hpp b/include/fintamath/numbers/INumber.hpp index 4111a79e6..0527d6112 100644 --- a/include/fintamath/numbers/INumber.hpp +++ b/include/fintamath/numbers/INumber.hpp @@ -8,7 +8,7 @@ #include "fintamath/core/CoreUtils.hpp" #include "fintamath/core/IArithmetic.hpp" #include "fintamath/core/IComparable.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/core/Parser.hpp" namespace fintamath { diff --git a/include/fintamath/numbers/Integer.hpp b/include/fintamath/numbers/Integer.hpp index 6e74e72a2..1e73a317b 100644 --- a/include/fintamath/numbers/Integer.hpp +++ b/include/fintamath/numbers/Integer.hpp @@ -12,7 +12,7 @@ #include #include "fintamath/core/IArithmetic.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/numbers/IInteger.hpp" namespace fintamath { diff --git a/include/fintamath/numbers/Rational.hpp b/include/fintamath/numbers/Rational.hpp index b141a5e94..153e9638c 100644 --- a/include/fintamath/numbers/Rational.hpp +++ b/include/fintamath/numbers/Rational.hpp @@ -10,7 +10,7 @@ #include "fintamath/core/IArithmetic.hpp" #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/numbers/INumber.hpp" #include "fintamath/numbers/Integer.hpp" diff --git a/include/fintamath/numbers/Real.hpp b/include/fintamath/numbers/Real.hpp index 199d2b020..c13c30168 100644 --- a/include/fintamath/numbers/Real.hpp +++ b/include/fintamath/numbers/Real.hpp @@ -13,7 +13,7 @@ #include "fintamath/core/IArithmetic.hpp" #include "fintamath/core/IComparable.hpp" #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/numbers/INumber.hpp" #include "fintamath/numbers/Integer.hpp" #include "fintamath/numbers/Rational.hpp" diff --git a/src/fintamath/expressions/Expression.cpp b/src/fintamath/expressions/Expression.cpp index 3f629c7dc..534ee631e 100644 --- a/src/fintamath/expressions/Expression.cpp +++ b/src/fintamath/expressions/Expression.cpp @@ -14,7 +14,7 @@ #include "fintamath/core/Cache.hpp" #include "fintamath/core/CoreUtils.hpp" #include "fintamath/core/IMathObject.hpp" -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/core/Tokenizer.hpp" #include "fintamath/exceptions/InvalidInputException.hpp" #include "fintamath/expressions/ExpressionParser.hpp" diff --git a/src/fintamath/expressions/FunctionExpression.hpp b/src/fintamath/expressions/FunctionExpression.hpp index 9f5cee9bd..54c5ffe7e 100644 --- a/src/fintamath/expressions/FunctionExpression.hpp +++ b/src/fintamath/expressions/FunctionExpression.hpp @@ -3,7 +3,7 @@ #include #include -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/expressions/IExpression.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/src/fintamath/expressions/binary/CompExpression.hpp b/src/fintamath/expressions/binary/CompExpression.hpp index ddf82d4b4..26d357ad5 100644 --- a/src/fintamath/expressions/binary/CompExpression.hpp +++ b/src/fintamath/expressions/binary/CompExpression.hpp @@ -3,7 +3,7 @@ #include #include -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/expressions/interfaces/IBinaryExpression.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/src/fintamath/expressions/binary/DerivativeExpression.hpp b/src/fintamath/expressions/binary/DerivativeExpression.hpp index db645ea81..70e7ef58c 100644 --- a/src/fintamath/expressions/binary/DerivativeExpression.hpp +++ b/src/fintamath/expressions/binary/DerivativeExpression.hpp @@ -2,7 +2,7 @@ #include -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/expressions/IExpression.hpp" #include "fintamath/expressions/interfaces/IBinaryExpression.hpp" #include "fintamath/functions/FunctionArguments.hpp" diff --git a/src/fintamath/expressions/binary/DivExpression.hpp b/src/fintamath/expressions/binary/DivExpression.hpp index 70dfa6375..008ac8ea6 100644 --- a/src/fintamath/expressions/binary/DivExpression.hpp +++ b/src/fintamath/expressions/binary/DivExpression.hpp @@ -3,7 +3,7 @@ #include #include -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/expressions/interfaces/IBinaryExpression.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/src/fintamath/expressions/binary/IntegralExpression.hpp b/src/fintamath/expressions/binary/IntegralExpression.hpp index 05cf797fc..f5db08753 100644 --- a/src/fintamath/expressions/binary/IntegralExpression.hpp +++ b/src/fintamath/expressions/binary/IntegralExpression.hpp @@ -1,6 +1,6 @@ #pragma once -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/expressions/interfaces/IBinaryExpression.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/src/fintamath/expressions/binary/LogExpression.hpp b/src/fintamath/expressions/binary/LogExpression.hpp index 572de4ffb..def46953c 100644 --- a/src/fintamath/expressions/binary/LogExpression.hpp +++ b/src/fintamath/expressions/binary/LogExpression.hpp @@ -3,7 +3,7 @@ #include #include -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/expressions/interfaces/IBinaryExpression.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/src/fintamath/expressions/binary/PowExpression.hpp b/src/fintamath/expressions/binary/PowExpression.hpp index e755bd800..db56019f4 100644 --- a/src/fintamath/expressions/binary/PowExpression.hpp +++ b/src/fintamath/expressions/binary/PowExpression.hpp @@ -4,7 +4,7 @@ #include #include -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/expressions/interfaces/IBinaryExpression.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/src/fintamath/expressions/polynomial/AddExpression.hpp b/src/fintamath/expressions/polynomial/AddExpression.hpp index 8fdf7d838..b12edae46 100644 --- a/src/fintamath/expressions/polynomial/AddExpression.hpp +++ b/src/fintamath/expressions/polynomial/AddExpression.hpp @@ -6,7 +6,7 @@ #include #include -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/expressions/IExpression.hpp" #include "fintamath/expressions/interfaces/IPolynomExpression.hpp" #include "fintamath/functions/FunctionArguments.hpp" diff --git a/src/fintamath/expressions/polynomial/AndExpression.hpp b/src/fintamath/expressions/polynomial/AndExpression.hpp index e024996c2..5a3f8a0d6 100644 --- a/src/fintamath/expressions/polynomial/AndExpression.hpp +++ b/src/fintamath/expressions/polynomial/AndExpression.hpp @@ -1,6 +1,6 @@ #pragma once -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/expressions/interfaces/IPolynomExpression.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/src/fintamath/expressions/polynomial/MinMaxExpression.hpp b/src/fintamath/expressions/polynomial/MinMaxExpression.hpp index 0265b44d1..d2694d61e 100644 --- a/src/fintamath/expressions/polynomial/MinMaxExpression.hpp +++ b/src/fintamath/expressions/polynomial/MinMaxExpression.hpp @@ -1,6 +1,6 @@ #pragma once -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/expressions/interfaces/IPolynomExpression.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/src/fintamath/expressions/polynomial/MulExpression.hpp b/src/fintamath/expressions/polynomial/MulExpression.hpp index 240c11021..926fe0da7 100644 --- a/src/fintamath/expressions/polynomial/MulExpression.hpp +++ b/src/fintamath/expressions/polynomial/MulExpression.hpp @@ -2,7 +2,7 @@ #include -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/expressions/interfaces/IPolynomExpression.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/src/fintamath/expressions/polynomial/OrExpression.hpp b/src/fintamath/expressions/polynomial/OrExpression.hpp index 2b6e2f16a..856df8a77 100644 --- a/src/fintamath/expressions/polynomial/OrExpression.hpp +++ b/src/fintamath/expressions/polynomial/OrExpression.hpp @@ -2,7 +2,7 @@ #include -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/expressions/interfaces/IPolynomExpression.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/src/fintamath/expressions/unary/AbsExpression.hpp b/src/fintamath/expressions/unary/AbsExpression.hpp index f30fc95cd..bba365840 100644 --- a/src/fintamath/expressions/unary/AbsExpression.hpp +++ b/src/fintamath/expressions/unary/AbsExpression.hpp @@ -1,6 +1,6 @@ #pragma once -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/expressions/interfaces/IUnaryExpression.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/src/fintamath/expressions/unary/FloorCeilExpression.hpp b/src/fintamath/expressions/unary/FloorCeilExpression.hpp index efdfa1783..90ef8bcba 100644 --- a/src/fintamath/expressions/unary/FloorCeilExpression.hpp +++ b/src/fintamath/expressions/unary/FloorCeilExpression.hpp @@ -2,7 +2,7 @@ #include -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/expressions/interfaces/IUnaryExpression.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/src/fintamath/expressions/unary/HyperbExpression.hpp b/src/fintamath/expressions/unary/HyperbExpression.hpp index 5f1b7332e..e798a7db6 100644 --- a/src/fintamath/expressions/unary/HyperbExpression.hpp +++ b/src/fintamath/expressions/unary/HyperbExpression.hpp @@ -2,7 +2,7 @@ #include -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/expressions/interfaces/IUnaryExpression.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/src/fintamath/expressions/unary/InvHyperbExpression.hpp b/src/fintamath/expressions/unary/InvHyperbExpression.hpp index 7e4eeebb6..027efd17d 100644 --- a/src/fintamath/expressions/unary/InvHyperbExpression.hpp +++ b/src/fintamath/expressions/unary/InvHyperbExpression.hpp @@ -1,6 +1,6 @@ #pragma once -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/expressions/interfaces/IUnaryExpression.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/src/fintamath/expressions/unary/InvTrigExpression.hpp b/src/fintamath/expressions/unary/InvTrigExpression.hpp index 0b9e33766..56e234c0f 100644 --- a/src/fintamath/expressions/unary/InvTrigExpression.hpp +++ b/src/fintamath/expressions/unary/InvTrigExpression.hpp @@ -1,6 +1,6 @@ #pragma once -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/expressions/interfaces/IUnaryExpression.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/src/fintamath/expressions/unary/NotExpression.hpp b/src/fintamath/expressions/unary/NotExpression.hpp index 014b395ea..d5c23b00d 100644 --- a/src/fintamath/expressions/unary/NotExpression.hpp +++ b/src/fintamath/expressions/unary/NotExpression.hpp @@ -2,7 +2,7 @@ #include -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/expressions/interfaces/IUnaryExpression.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/src/fintamath/expressions/unary/SignExpression.hpp b/src/fintamath/expressions/unary/SignExpression.hpp index f8248875f..7da7040bc 100644 --- a/src/fintamath/expressions/unary/SignExpression.hpp +++ b/src/fintamath/expressions/unary/SignExpression.hpp @@ -1,6 +1,6 @@ #pragma once -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/expressions/interfaces/IUnaryExpression.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/src/fintamath/expressions/unary/TrigExpression.hpp b/src/fintamath/expressions/unary/TrigExpression.hpp index 8dbad8477..ccd565145 100644 --- a/src/fintamath/expressions/unary/TrigExpression.hpp +++ b/src/fintamath/expressions/unary/TrigExpression.hpp @@ -3,7 +3,7 @@ #include #include -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/expressions/interfaces/IUnaryExpression.hpp" #include "fintamath/functions/FunctionArguments.hpp" #include "fintamath/functions/IFunction.hpp" diff --git a/tests/src/core/MathObjectBoundTypesTests.cpp b/tests/src/core/MathObjectBoundTypesTests.cpp new file mode 100644 index 000000000..bdd4819ac --- /dev/null +++ b/tests/src/core/MathObjectBoundTypesTests.cpp @@ -0,0 +1,52 @@ +#include + +#include "fintamath/core/MathObjectBoundTypes.hpp" + +#include "fintamath/literals/ILiteral.hpp" +#include "fintamath/literals/Variable.hpp" +#include "fintamath/literals/constants/E.hpp" +#include "fintamath/literals/constants/IConstant.hpp" +#include "fintamath/literals/constants/True.hpp" +#include "fintamath/numbers/Integer.hpp" +#include "fintamath/numbers/Rational.hpp" + +using namespace fintamath; +using namespace detail; + +TEST(MathObjectBoundTypesTests, bindTypesTest) { + // TODO: implement +} + +TEST(MathObjectBoundTypesTests, isBaseOfTest) { + EXPECT_TRUE(isBaseOf(INumber::getTypeStatic(), Integer::getTypeStatic())); + EXPECT_TRUE(isBaseOf(INumber::getTypeStatic(), Rational::getTypeStatic())); + EXPECT_TRUE(isBaseOf(IArithmetic::getTypeStatic(), Integer::getTypeStatic())); + EXPECT_TRUE(isBaseOf(IMathObject::getTypeStatic(), Integer::getTypeStatic())); + EXPECT_TRUE(isBaseOf(IArithmetic::getTypeStatic(), INumber::getTypeStatic())); + EXPECT_TRUE(isBaseOf(IMathObject::getTypeStatic(), INumber::getTypeStatic())); + EXPECT_TRUE(isBaseOf(IMathObject::getTypeStatic(), IArithmetic::getTypeStatic())); + EXPECT_TRUE(isBaseOf(IConstant::getTypeStatic(), True::getTypeStatic())); + EXPECT_TRUE(isBaseOf(ILiteral::getTypeStatic(), Variable::getTypeStatic())); + EXPECT_TRUE(isBaseOf(ILiteral::getTypeStatic(), IConstant::getTypeStatic())); + EXPECT_TRUE(isBaseOf(ILiteral::getTypeStatic(), True::getTypeStatic())); + EXPECT_TRUE(isBaseOf(ILiteral::getTypeStatic(), E::getTypeStatic())); + + EXPECT_FALSE(isBaseOf(Integer::getTypeStatic(), INumber::getTypeStatic())); + EXPECT_FALSE(isBaseOf(Rational::getTypeStatic(), INumber::getTypeStatic())); + EXPECT_FALSE(isBaseOf(Integer::getTypeStatic(), IArithmetic::getTypeStatic())); + EXPECT_FALSE(isBaseOf(Integer::getTypeStatic(), IMathObject::getTypeStatic())); + EXPECT_FALSE(isBaseOf(INumber::getTypeStatic(), IArithmetic::getTypeStatic())); + EXPECT_FALSE(isBaseOf(INumber::getTypeStatic(), IMathObject::getTypeStatic())); + EXPECT_FALSE(isBaseOf(IArithmetic::getTypeStatic(), IMathObject::getTypeStatic())); + EXPECT_FALSE(isBaseOf(True::getTypeStatic(), IConstant::getTypeStatic())); + EXPECT_FALSE(isBaseOf(Variable::getTypeStatic(), ILiteral::getTypeStatic())); + EXPECT_FALSE(isBaseOf(IConstant::getTypeStatic(), ILiteral::getTypeStatic())); + EXPECT_FALSE(isBaseOf(True::getTypeStatic(), ILiteral::getTypeStatic())); + EXPECT_FALSE(isBaseOf(E::getTypeStatic(), ILiteral::getTypeStatic())); + + EXPECT_FALSE(isBaseOf(ILiteral::getTypeStatic(), Integer::getTypeStatic())); + EXPECT_FALSE(isBaseOf(ILiteral::getTypeStatic(), Rational::getTypeStatic())); + EXPECT_FALSE(isBaseOf(ILiteral::getTypeStatic(), INumber::getTypeStatic())); + EXPECT_FALSE(isBaseOf(IConstant::getTypeStatic(), INumber::getTypeStatic())); + EXPECT_FALSE(isBaseOf(Boolean::getTypeStatic(), INumber::getTypeStatic())); +} diff --git a/tests/src/core/MathObjectTypeTests.cpp b/tests/src/core/MathObjectTypeTests.cpp index 85378c59d..31b82b1d7 100644 --- a/tests/src/core/MathObjectTypeTests.cpp +++ b/tests/src/core/MathObjectTypeTests.cpp @@ -1,9 +1,8 @@ #include -#include "fintamath/core/MathObjectTypes.hpp" +#include "fintamath/core/MathObjectType.hpp" #include "fintamath/literals/ILiteral.hpp" -#include "fintamath/literals/Variable.hpp" #include "fintamath/literals/constants/E.hpp" #include "fintamath/literals/constants/IConstant.hpp" #include "fintamath/literals/constants/True.hpp" @@ -24,11 +23,17 @@ TEST(MathObjectTypeTests, constructorTest) { EXPECT_EQ(t.getId(), 123); EXPECT_EQ(t.getName(), "NotInt"); } -} -TEST(MathObjectTypeTests, equalsTest) { - EXPECT_TRUE(Integer::getTypeStatic() == Integer::getTypeStatic()); - EXPECT_FALSE(Integer::getTypeStatic() == Rational::getTypeStatic()); + { + const MathObjectType t(MathObjectType::Integer, "Int"); + EXPECT_EQ(t.getId(), static_cast(MathObjectType::Integer)); + EXPECT_EQ(t.getName(), "Int"); + } + { + const MathObjectType t(123, "NotInt"); + EXPECT_EQ(t.getId(), 123); + EXPECT_EQ(t.getName(), "NotInt"); + } } TEST(MathObjectTypeTests, compareTest) { @@ -53,41 +58,3 @@ TEST(MathObjectTypeTests, hashTest) { EXPECT_EQ(boost::hash{}(IConstant::getTypeStatic()), static_cast(MathObjectType::IConstant)); EXPECT_EQ(boost::hash{}(Boolean::getTypeStatic()), static_cast(MathObjectType::Boolean)); } - -TEST(MathObjectbindTypes, bindTypesTest) { - // TODO: implement -} - -TEST(MathObjectbindTypes, isBaseOfTest) { - EXPECT_TRUE(isBaseOf(INumber::getTypeStatic(), Integer::getTypeStatic())); - EXPECT_TRUE(isBaseOf(INumber::getTypeStatic(), Rational::getTypeStatic())); - EXPECT_TRUE(isBaseOf(IArithmetic::getTypeStatic(), Integer::getTypeStatic())); - EXPECT_TRUE(isBaseOf(IMathObject::getTypeStatic(), Integer::getTypeStatic())); - EXPECT_TRUE(isBaseOf(IArithmetic::getTypeStatic(), INumber::getTypeStatic())); - EXPECT_TRUE(isBaseOf(IMathObject::getTypeStatic(), INumber::getTypeStatic())); - EXPECT_TRUE(isBaseOf(IMathObject::getTypeStatic(), IArithmetic::getTypeStatic())); - EXPECT_TRUE(isBaseOf(IConstant::getTypeStatic(), True::getTypeStatic())); - EXPECT_TRUE(isBaseOf(ILiteral::getTypeStatic(), Variable::getTypeStatic())); - EXPECT_TRUE(isBaseOf(ILiteral::getTypeStatic(), IConstant::getTypeStatic())); - EXPECT_TRUE(isBaseOf(ILiteral::getTypeStatic(), True::getTypeStatic())); - EXPECT_TRUE(isBaseOf(ILiteral::getTypeStatic(), E::getTypeStatic())); - - EXPECT_FALSE(isBaseOf(Integer::getTypeStatic(), INumber::getTypeStatic())); - EXPECT_FALSE(isBaseOf(Rational::getTypeStatic(), INumber::getTypeStatic())); - EXPECT_FALSE(isBaseOf(Integer::getTypeStatic(), IArithmetic::getTypeStatic())); - EXPECT_FALSE(isBaseOf(Integer::getTypeStatic(), IMathObject::getTypeStatic())); - EXPECT_FALSE(isBaseOf(INumber::getTypeStatic(), IArithmetic::getTypeStatic())); - EXPECT_FALSE(isBaseOf(INumber::getTypeStatic(), IMathObject::getTypeStatic())); - EXPECT_FALSE(isBaseOf(IArithmetic::getTypeStatic(), IMathObject::getTypeStatic())); - EXPECT_FALSE(isBaseOf(True::getTypeStatic(), IConstant::getTypeStatic())); - EXPECT_FALSE(isBaseOf(Variable::getTypeStatic(), ILiteral::getTypeStatic())); - EXPECT_FALSE(isBaseOf(IConstant::getTypeStatic(), ILiteral::getTypeStatic())); - EXPECT_FALSE(isBaseOf(True::getTypeStatic(), ILiteral::getTypeStatic())); - EXPECT_FALSE(isBaseOf(E::getTypeStatic(), ILiteral::getTypeStatic())); - - EXPECT_FALSE(isBaseOf(ILiteral::getTypeStatic(), Integer::getTypeStatic())); - EXPECT_FALSE(isBaseOf(ILiteral::getTypeStatic(), Rational::getTypeStatic())); - EXPECT_FALSE(isBaseOf(ILiteral::getTypeStatic(), INumber::getTypeStatic())); - EXPECT_FALSE(isBaseOf(IConstant::getTypeStatic(), INumber::getTypeStatic())); - EXPECT_FALSE(isBaseOf(Boolean::getTypeStatic(), INumber::getTypeStatic())); -}