OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2016 Google Inc. | 2 * Copyright 2016 Google Inc. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license that can be | 4 * Use of this source code is governed by a BSD-style license that can be |
5 * found in the LICENSE file. | 5 * found in the LICENSE file. |
6 */ | 6 */ |
7 | 7 |
8 #ifndef SKSL_PARSER | 8 #ifndef SKSL_PARSER |
9 #define SKSL_PARSER | 9 #define SKSL_PARSER |
10 | 10 |
(...skipping 17 matching lines...) Expand all Loading... |
28 struct ASTDiscardStatement; | 28 struct ASTDiscardStatement; |
29 struct ASTDoStatement; | 29 struct ASTDoStatement; |
30 struct ASTExpression; | 30 struct ASTExpression; |
31 struct ASTExpressionStatement; | 31 struct ASTExpressionStatement; |
32 struct ASTForStatement; | 32 struct ASTForStatement; |
33 struct ASTIfStatement; | 33 struct ASTIfStatement; |
34 struct ASTInterfaceBlock; | 34 struct ASTInterfaceBlock; |
35 struct ASTLayout; | 35 struct ASTLayout; |
36 struct ASTModifiers; | 36 struct ASTModifiers; |
37 struct ASTParameter; | 37 struct ASTParameter; |
38 struct ASTPrecision; | |
39 struct ASTReturnStatement; | 38 struct ASTReturnStatement; |
40 struct ASTStatement; | 39 struct ASTStatement; |
41 struct ASTSuffix; | 40 struct ASTSuffix; |
42 struct ASTType; | 41 struct ASTType; |
43 struct ASTWhileStatement; | 42 struct ASTWhileStatement; |
44 struct ASTVarDeclarations; | 43 struct ASTVarDeclarations; |
45 class SymbolTable; | 44 class SymbolTable; |
46 | 45 |
47 /** | 46 /** |
48 * Consumes .sksl text and produces an abstract syntax tree describing the conte
nts. | 47 * Consumes .sksl text and produces an abstract syntax tree describing the conte
nts. |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
94 /** | 93 /** |
95 * Returns true if the 'name' identifier refers to a type name. For instance
, isType("int") will | 94 * Returns true if the 'name' identifier refers to a type name. For instance
, isType("int") will |
96 * always return true. | 95 * always return true. |
97 */ | 96 */ |
98 bool isType(std::string name); | 97 bool isType(std::string name); |
99 | 98 |
100 // these functions parse individual grammar rules from the current parse pos
ition; you probably | 99 // these functions parse individual grammar rules from the current parse pos
ition; you probably |
101 // don't need to call any of these outside of the parser. The function decla
rations in the .cpp | 100 // don't need to call any of these outside of the parser. The function decla
rations in the .cpp |
102 // file have comments describing the grammar rules. | 101 // file have comments describing the grammar rules. |
103 | 102 |
104 std::unique_ptr<ASTDeclaration> precision(); | 103 void precision(); |
105 | 104 |
106 std::unique_ptr<ASTDeclaration> directive(); | 105 std::unique_ptr<ASTDeclaration> directive(); |
107 | 106 |
108 std::unique_ptr<ASTDeclaration> declaration(); | 107 std::unique_ptr<ASTDeclaration> declaration(); |
109 | 108 |
110 std::unique_ptr<ASTVarDeclarations> varDeclarations(); | 109 std::unique_ptr<ASTVarDeclarations> varDeclarations(); |
111 | 110 |
112 std::unique_ptr<ASTType> structDeclaration(); | 111 std::unique_ptr<ASTType> structDeclaration(); |
113 | 112 |
114 std::unique_ptr<ASTVarDeclarations> structVarDeclaration(ASTModifiers modifi
ers); | 113 std::unique_ptr<ASTVarDeclarations> structVarDeclaration(ASTModifiers modifi
ers); |
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
201 void* fScanner; | 200 void* fScanner; |
202 YY_BUFFER_STATE fBuffer; | 201 YY_BUFFER_STATE fBuffer; |
203 Token fPushback; | 202 Token fPushback; |
204 SymbolTable& fTypes; | 203 SymbolTable& fTypes; |
205 ErrorReporter& fErrors; | 204 ErrorReporter& fErrors; |
206 }; | 205 }; |
207 | 206 |
208 } // namespace | 207 } // namespace |
209 | 208 |
210 #endif | 209 #endif |
OLD | NEW |