/* * Author: Patrick-Christopher Mattulat * Company: Lynar Studios * E-Mail: webmaster@lynarstudios.com * Created: 2023-02-10 * Changed: 2024-09-11 * * */ #ifndef LS_STD_INDEX_OUT_OF_BOUNDS_EVALUATOR_EVALUATOR_HPP #define LS_STD_INDEX_OUT_OF_BOUNDS_EVALUATOR_EVALUATOR_HPP #include #include #include /* * @doc: class(name: 'IndexOutOfBoundsEvaluator', package: 'core') * @doc: core.IndexOutOfBoundsEvaluator.description('This class evaluates whether a passed index is out of bounds.') * */ namespace ls::std::core { class LS_STD_DYNAMIC_GOAL IndexOutOfBoundsEvaluator : public ls::std::core::interface_type::IEvaluator { public: explicit IndexOutOfBoundsEvaluator(size_t _index, size_t _size); explicit IndexOutOfBoundsEvaluator(size_t _index, size_t _size, ::std::string _message); ~IndexOutOfBoundsEvaluator() noexcept override; void evaluate() override; private: size_t index{}; ::std::string message{}; size_t size{}; }; } #endif