Как правильно реализовать синтаксический анализатор обработки исключений

У меня небольшая проблема с дизайном моего скриптового языка, который я создаю для своего игрового движка C ++. Я пытаюсь сделать так, чтобы объект с именем SScript вызывал метод для загрузки необходимых файлов и проверял суффикс файла сценария. У меня также есть базовый класс с именем SMessage, из которого происходит другой класс с именем SErrorMessage. Вот несколько примеров кода, чтобы проиллюстрировать, что именно я хочу сделать:

SScript::SScript(const std::string& filepath)
{
if (load(filepath) == SError(SError::Error_Codes::ERROR_CUSTOM))
{

}
}

SMessage& SScript::load(const std::string& filepath)
{

}

Вот заголовочный файл для SError:

class SError : public SMessage
{
public:
enum class Error_Codes
{
ERROR_CUSTOM = 1,
ERROR_LOADING_SCRIPT = 2,
ERROR_SCRIPT_INCORRECT_SUFFIX = 3,
};

SError(Error_Codes errorCode);
SError(Error_Codes errorCode, const std::string& contents);

virtual void message(const std::string& contents);

inline bool operator=(const Error_Codes errorCode)
{

}

private:
SError() {};

Error_Codes m_error_code;

void organizeString(const std::string& contents);
};

В SScript :: SScript () я хочу вызвать load и сравнить его с различными сообщениями SMessages или SErrorMessages. Я пытался реализовать перегрузку оператора, но я не думаю, что это решит проблему. Я как бы врезался в кирпичную стену, и мне нужно серьезное переосмысление дизайна. Любая помощь приветствуется и большое спасибо!

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]