#ifndef MALACHSCRIPT_DIAGNOSTICTYPE_HPP #define MALACHSCRIPT_DIAGNOSTICTYPE_HPP #include namespace MalachScript::Diagnostics { enum class DiagnosticType : uint8_t { UnknownToken, InvalidNumericalBase, ExpectedEndOfString }; class DiagnosticTypeHelper { static std::string ToEnglishString(DiagnosticType type) { switch (type) { case DiagnosticType::UnknownToken: return "Unknown token"; case DiagnosticType::InvalidNumericalBase: return "Invalid numerical base"; case DiagnosticType::ExpectedEndOfString: return "Expected end of string"; } return std::to_string((uint8_t)type); } }; } #endif // MALACHSCRIPT_DIAGNOSTICTYPE_HPP