summaryrefslogtreecommitdiff
path: root/src/parse/tokenstream.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/parse/tokenstream.hpp')
-rw-r--r--src/parse/tokenstream.hpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/parse/tokenstream.hpp b/src/parse/tokenstream.hpp
index c6e2de37..ae737d0d 100644
--- a/src/parse/tokenstream.hpp
+++ b/src/parse/tokenstream.hpp
@@ -50,7 +50,8 @@ class TokenStream
bool m_cache_valid;
Token m_cache;
- ::std::vector<Token> m_lookahead;
+ Ident::Hygiene m_hygiene;
+ ::std::vector< ::std::pair<Token, Ident::Hygiene> > m_lookahead;
ParseState m_parse_state;
public:
TokenStream();
@@ -60,7 +61,7 @@ public:
eTokenType lookahead(unsigned int count);
virtual Position getPosition() const = 0;
- virtual Ident::Hygiene getHygiene() const = 0;
+ Ident::Hygiene getHygiene() const;
ParseState& parse_state() { return m_parse_state; }
@@ -71,6 +72,7 @@ public:
protected:
virtual Token realGetToken() = 0;
+ virtual Ident::Hygiene realGetHygiene() const = 0;
private:
Token innerGetToken();
};