Files
2024-03-13 01:55:14 +00:00

26 lines
730 B
C++

#ifndef CALCULATOR_CHALLENGE_CALCULATORCLI_HPP
#define CALCULATOR_CHALLENGE_CALCULATORCLI_HPP
#include "BinaryOperatorFactory.hpp"
#include "Calculator.hpp"
class CalculatorCli
{
public:
CalculatorCli() noexcept = default;
CalculatorCli(const CalculatorCli&) noexcept = delete;
CalculatorCli(CalculatorCli&&) noexcept = delete;
auto operator=(const CalculatorCli&) noexcept -> CalculatorCli& = delete;
auto operator=(CalculatorCli&&) noexcept -> CalculatorCli& = delete;
~CalculatorCli() noexcept = default;
auto parse(std::string_view text) noexcept -> std::string;
void runLoop() noexcept;
private:
Calculator _calculator;
BinaryOperatorFactory<double> _operation_factory;
};
#endif