|
1 // |
|
2 // Copyright (c) 2012 The ANGLE Project Authors. All rights reserved. |
|
3 // Use of this source code is governed by a BSD-style license that can be |
|
4 // found in the LICENSE file. |
|
5 // |
|
6 |
|
7 #ifndef COMPILER_PREPROCESSOR_EXPRESSION_PARSER_H_ |
|
8 #define COMPILER_PREPROCESSOR_EXPRESSION_PARSER_H_ |
|
9 |
|
10 #include "pp_utils.h" |
|
11 |
|
12 namespace pp |
|
13 { |
|
14 |
|
15 class Diagnostics; |
|
16 class Lexer; |
|
17 struct Token; |
|
18 |
|
19 class ExpressionParser |
|
20 { |
|
21 public: |
|
22 ExpressionParser(Lexer* lexer, Diagnostics* diagnostics); |
|
23 |
|
24 bool parse(Token* token, int* result); |
|
25 |
|
26 private: |
|
27 PP_DISALLOW_COPY_AND_ASSIGN(ExpressionParser); |
|
28 |
|
29 Lexer* mLexer; |
|
30 Diagnostics* mDiagnostics; |
|
31 }; |
|
32 |
|
33 } // namespace pp |
|
34 #endif // COMPILER_PREPROCESSOR_EXPRESSION_PARSER_H_ |