Add string literals
This commit is contained in:
18
include/token/errors.hpp
Normal file
18
include/token/errors.hpp
Normal file
@@ -0,0 +1,18 @@
|
||||
#pragma once
|
||||
#include <stdexcept>
|
||||
#include <token/token.hpp>
|
||||
|
||||
namespace Token
|
||||
{
|
||||
struct TokenizationError : public std::exception
|
||||
{
|
||||
Token errorToken;
|
||||
std::string errorMsg;
|
||||
TokenizationError(Token const & token, std::string const & msg);
|
||||
};
|
||||
|
||||
struct MissingEndOfString : public TokenizationError
|
||||
{
|
||||
MissingEndOfString(Token const & token);
|
||||
};
|
||||
}
|
||||
@@ -42,6 +42,7 @@ namespace Token
|
||||
static Token CreateOperandToken(OperandType const operandType, int const lineNumber, int const lineColumn);
|
||||
static Token CreateMemoryToken(RegisterType const registerType, int const lineNumber, int const lineColumn);
|
||||
static Token CreateMemoryToken(int const value, bool isValid, int const lineNumber, int const lineColumn);
|
||||
static Token CreateStringLiteralToken(std::string const & value, int const lineNumber, int const lineColumn);
|
||||
|
||||
void DebugPrint() const;
|
||||
};
|
||||
|
||||
@@ -10,6 +10,7 @@ namespace Token
|
||||
Register,
|
||||
StatementEnd,
|
||||
Label,
|
||||
String,
|
||||
Memory
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user