Differences From Artifact [15306b8502]:
- File
bs/parse/resolver.h
— part of check-in
[5ea9869c62]
at
2019-02-01 18:34:21
on branch trunk
— Lexer:
- added TokenProvider interface.
- added an adapter for a vector of saved tokens as an alternative token provider.
To Artifact [516d016db3]:
- File bs/parse/resolver.h — part of check-in [f35a2c529c] at 2019-02-06 20:39:45 on branch trunk — Parser: parse function expressions. (user: achavasse size: 1019)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | + + + + + |
#ifndef EMPATHY_PARSE_RESOLVER_H
#define EMPATHY_PARSE_RESOLVER_H
namespace empathy::parse
{
class Resolver
{
public:
Resolver( const ptr< lex::TokenProvider >& tokProv, const sema::Context& c ) :
m_tokProvider( tokProv ),
m_context( c )
{}
Resolver( const Resolver& r, const sema::Context& c ) :
m_tokProvider( r.m_tokProvider ),
m_context( c )
{}
const auto& context() const { return m_context; }
bool eos() const;
optional< Term > consume();
optional< Term > consumeUnresolved();
|
| ︙ |