mirror of
https://github.com/Laupetin/OpenAssetTools.git
synced 2025-04-20 00:02:55 +00:00
Fix SimpleLexer not recognizing negative numbers
This commit is contained in:
parent
18aa914d70
commit
ebb8eb9e5b
@ -263,7 +263,9 @@ protected:
|
||||
{
|
||||
const auto& currentLine = CurrentLine();
|
||||
assert(m_current_line_offset >= 1);
|
||||
assert(isdigit(currentLine.m_line[m_current_line_offset - 1]) || currentLine.m_line[m_current_line_offset - 1] == '.');
|
||||
assert(isdigit(currentLine.m_line[m_current_line_offset - 1])
|
||||
|| currentLine.m_line[m_current_line_offset - 1] == '.'
|
||||
|| currentLine.m_line[m_current_line_offset - 1] == '-');
|
||||
|
||||
const auto lineLength = currentLine.m_line.size();
|
||||
if (lineLength - m_current_line_offset >= 1
|
||||
|
@ -30,7 +30,7 @@ protected:
|
||||
virtual const std::vector<sequence_t*>& GetTestsForState() = 0;
|
||||
|
||||
public:
|
||||
virtual ~AbstractParser() override = default;
|
||||
~AbstractParser() override = default;
|
||||
AbstractParser(const AbstractParser& other) = default;
|
||||
AbstractParser(AbstractParser&& other) noexcept = default;
|
||||
AbstractParser& operator=(const AbstractParser& other) = default;
|
||||
|
@ -120,7 +120,7 @@ SimpleParserValue SimpleLexer::GetNextToken()
|
||||
if (m_config.m_read_strings && c == '\"')
|
||||
return SimpleParserValue::String(pos, new std::string(ReadString()));
|
||||
|
||||
if (m_config.m_read_numbers && (isdigit(c) || c == '.' && isdigit(PeekChar())))
|
||||
if (m_config.m_read_numbers && (isdigit(c) || (c == '-' || c == '.') && isdigit(PeekChar())))
|
||||
{
|
||||
bool isFloatingPointValue;
|
||||
double doubleValue;
|
||||
|
Loading…
x
Reference in New Issue
Block a user