From 007ffe94309f1a8b39da78bbbfe922de41be1f55 Mon Sep 17 00:00:00 2001 From: Alex Beregszaszi Date: Mon, 29 May 2017 15:05:12 +0100 Subject: [PATCH] Avoid including Scanner.h in ParserBase.h --- libsolidity/codegen/CompilerContext.cpp | 1 + libsolidity/parsing/ParserBase.cpp | 20 ++++++++++++++++++++ libsolidity/parsing/ParserBase.h | 9 ++++----- 3 files changed, 25 insertions(+), 5 deletions(-) diff --git a/libsolidity/codegen/CompilerContext.cpp b/libsolidity/codegen/CompilerContext.cpp index d98efcadc..9d0d6d37a 100644 --- a/libsolidity/codegen/CompilerContext.cpp +++ b/libsolidity/codegen/CompilerContext.cpp @@ -26,6 +26,7 @@ #include #include #include +#include #include #include #include diff --git a/libsolidity/parsing/ParserBase.cpp b/libsolidity/parsing/ParserBase.cpp index 9987b82c8..5657c2c02 100644 --- a/libsolidity/parsing/ParserBase.cpp +++ b/libsolidity/parsing/ParserBase.cpp @@ -43,6 +43,26 @@ int ParserBase::endPosition() const return m_scanner->currentLocation().end; } +Token::Value ParserBase::currentToken() const +{ + return m_scanner->currentToken(); +} + +Token::Value ParserBase::peekNextToken() const +{ + return m_scanner->peekNextToken(); +} + +std::string ParserBase::currentLiteral() const +{ + return m_scanner->currentLiteral(); +} + +Token::Value ParserBase::advance() +{ + return m_scanner->next(); +} + void ParserBase::expectToken(Token::Value _value) { Token::Value tok = m_scanner->currentToken(); diff --git a/libsolidity/parsing/ParserBase.h b/libsolidity/parsing/ParserBase.h index ae56ceada..5b03ab5e9 100644 --- a/libsolidity/parsing/ParserBase.h +++ b/libsolidity/parsing/ParserBase.h @@ -23,7 +23,6 @@ #pragma once #include -#include #include namespace dev @@ -51,10 +50,10 @@ protected: ///@name Helper functions /// If current token value is not _value, throw exception otherwise advance token. void expectToken(Token::Value _value); - Token::Value currentToken() const { return m_scanner->currentToken(); } - Token::Value peekNextToken() const { return m_scanner->peekNextToken(); } - std::string currentLiteral() const { return m_scanner->currentLiteral(); } - Token::Value advance() { return m_scanner->next(); } + Token::Value currentToken() const; + Token::Value peekNextToken() const; + std::string currentLiteral() const; + Token::Value advance(); ///@} /// Creates a @ref ParserError and annotates it with the current position and the