summaryrefslogtreecommitdiff
path: root/deps/v8/src/torque/TorqueListener.h
blob: 937ed606baf55cd5ab346abd17a37f79397cc7d6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
// Copyright 2018 the V8 project authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef V8_TORQUE_TORQUELISTENER_H_
#define V8_TORQUE_TORQUELISTENER_H_

// Generated from Torque.g4 by ANTLR 4.7.1

#pragma once

#include "./antlr4-runtime.h"
#include "TorqueParser.h"

/**
 * This interface defines an abstract listener for a parse tree produced by
 * TorqueParser.
 */
class TorqueListener : public antlr4::tree::ParseTreeListener {
 public:
  virtual void enterType(TorqueParser::TypeContext* ctx) = 0;
  virtual void exitType(TorqueParser::TypeContext* ctx) = 0;

  virtual void enterTypeList(TorqueParser::TypeListContext* ctx) = 0;
  virtual void exitTypeList(TorqueParser::TypeListContext* ctx) = 0;

  virtual void enterGenericSpecializationTypeList(
      TorqueParser::GenericSpecializationTypeListContext* ctx) = 0;
  virtual void exitGenericSpecializationTypeList(
      TorqueParser::GenericSpecializationTypeListContext* ctx) = 0;

  virtual void enterOptionalGenericTypeList(
      TorqueParser::OptionalGenericTypeListContext* ctx) = 0;
  virtual void exitOptionalGenericTypeList(
      TorqueParser::OptionalGenericTypeListContext* ctx) = 0;

  virtual void enterTypeListMaybeVarArgs(
      TorqueParser::TypeListMaybeVarArgsContext* ctx) = 0;
  virtual void exitTypeListMaybeVarArgs(
      TorqueParser::TypeListMaybeVarArgsContext* ctx) = 0;

  virtual void enterLabelParameter(
      TorqueParser::LabelParameterContext* ctx) = 0;
  virtual void exitLabelParameter(TorqueParser::LabelParameterContext* ctx) = 0;

  virtual void enterOptionalType(TorqueParser::OptionalTypeContext* ctx) = 0;
  virtual void exitOptionalType(TorqueParser::OptionalTypeContext* ctx) = 0;

  virtual void enterOptionalLabelList(
      TorqueParser::OptionalLabelListContext* ctx) = 0;
  virtual void exitOptionalLabelList(
      TorqueParser::OptionalLabelListContext* ctx) = 0;

  virtual void enterOptionalOtherwise(
      TorqueParser::OptionalOtherwiseContext* ctx) = 0;
  virtual void exitOptionalOtherwise(
      TorqueParser::OptionalOtherwiseContext* ctx) = 0;

  virtual void enterParameter(TorqueParser::ParameterContext* ctx) = 0;
  virtual void exitParameter(TorqueParser::ParameterContext* ctx) = 0;

  virtual void enterParameterList(TorqueParser::ParameterListContext* ctx) = 0;
  virtual void exitParameterList(TorqueParser::ParameterListContext* ctx) = 0;

  virtual void enterLabelDeclaration(
      TorqueParser::LabelDeclarationContext* ctx) = 0;
  virtual void exitLabelDeclaration(
      TorqueParser::LabelDeclarationContext* ctx) = 0;

  virtual void enterExpression(TorqueParser::ExpressionContext* ctx) = 0;
  virtual void exitExpression(TorqueParser::ExpressionContext* ctx) = 0;

  virtual void enterConditionalExpression(
      TorqueParser::ConditionalExpressionContext* ctx) = 0;
  virtual void exitConditionalExpression(
      TorqueParser::ConditionalExpressionContext* ctx) = 0;

  virtual void enterLogicalORExpression(
      TorqueParser::LogicalORExpressionContext* ctx) = 0;
  virtual void exitLogicalORExpression(
      TorqueParser::LogicalORExpressionContext* ctx) = 0;

  virtual void enterLogicalANDExpression(
      TorqueParser::LogicalANDExpressionContext* ctx) = 0;
  virtual void exitLogicalANDExpression(
      TorqueParser::LogicalANDExpressionContext* ctx) = 0;

  virtual void enterBitwiseExpression(
      TorqueParser::BitwiseExpressionContext* ctx) = 0;
  virtual void exitBitwiseExpression(
      TorqueParser::BitwiseExpressionContext* ctx) = 0;

  virtual void enterEqualityExpression(
      TorqueParser::EqualityExpressionContext* ctx) = 0;
  virtual void exitEqualityExpression(
      TorqueParser::EqualityExpressionContext* ctx) = 0;

  virtual void enterRelationalExpression(
      TorqueParser::RelationalExpressionContext* ctx) = 0;
  virtual void exitRelationalExpression(
      TorqueParser::RelationalExpressionContext* ctx) = 0;

  virtual void enterShiftExpression(
      TorqueParser::ShiftExpressionContext* ctx) = 0;
  virtual void exitShiftExpression(
      TorqueParser::ShiftExpressionContext* ctx) = 0;

  virtual void enterAdditiveExpression(
      TorqueParser::AdditiveExpressionContext* ctx) = 0;
  virtual void exitAdditiveExpression(
      TorqueParser::AdditiveExpressionContext* ctx) = 0;

  virtual void enterMultiplicativeExpression(
      TorqueParser::MultiplicativeExpressionContext* ctx) = 0;
  virtual void exitMultiplicativeExpression(
      TorqueParser::MultiplicativeExpressionContext* ctx) = 0;

  virtual void enterUnaryExpression(
      TorqueParser::UnaryExpressionContext* ctx) = 0;
  virtual void exitUnaryExpression(
      TorqueParser::UnaryExpressionContext* ctx) = 0;

  virtual void enterLocationExpression(
      TorqueParser::LocationExpressionContext* ctx) = 0;
  virtual void exitLocationExpression(
      TorqueParser::LocationExpressionContext* ctx) = 0;

  virtual void enterIncrementDecrement(
      TorqueParser::IncrementDecrementContext* ctx) = 0;
  virtual void exitIncrementDecrement(
      TorqueParser::IncrementDecrementContext* ctx) = 0;

  virtual void enterAssignment(TorqueParser::AssignmentContext* ctx) = 0;
  virtual void exitAssignment(TorqueParser::AssignmentContext* ctx) = 0;

  virtual void enterAssignmentExpression(
      TorqueParser::AssignmentExpressionContext* ctx) = 0;
  virtual void exitAssignmentExpression(
      TorqueParser::AssignmentExpressionContext* ctx) = 0;

  virtual void enterStructExpression(
      TorqueParser::StructExpressionContext* ctx) = 0;
  virtual void exitStructExpression(
      TorqueParser::StructExpressionContext* ctx) = 0;

  virtual void enterFunctionPointerExpression(
      TorqueParser::FunctionPointerExpressionContext* ctx) = 0;
  virtual void exitFunctionPointerExpression(
      TorqueParser::FunctionPointerExpressionContext* ctx) = 0;

  virtual void enterPrimaryExpression(
      TorqueParser::PrimaryExpressionContext* ctx) = 0;
  virtual void exitPrimaryExpression(
      TorqueParser::PrimaryExpressionContext* ctx) = 0;

  virtual void enterForInitialization(
      TorqueParser::ForInitializationContext* ctx) = 0;
  virtual void exitForInitialization(
      TorqueParser::ForInitializationContext* ctx) = 0;

  virtual void enterForLoop(TorqueParser::ForLoopContext* ctx) = 0;
  virtual void exitForLoop(TorqueParser::ForLoopContext* ctx) = 0;

  virtual void enterRangeSpecifier(
      TorqueParser::RangeSpecifierContext* ctx) = 0;
  virtual void exitRangeSpecifier(TorqueParser::RangeSpecifierContext* ctx) = 0;

  virtual void enterForOfRange(TorqueParser::ForOfRangeContext* ctx) = 0;
  virtual void exitForOfRange(TorqueParser::ForOfRangeContext* ctx) = 0;

  virtual void enterForOfLoop(TorqueParser::ForOfLoopContext* ctx) = 0;
  virtual void exitForOfLoop(TorqueParser::ForOfLoopContext* ctx) = 0;

  virtual void enterArgument(TorqueParser::ArgumentContext* ctx) = 0;
  virtual void exitArgument(TorqueParser::ArgumentContext* ctx) = 0;

  virtual void enterArgumentList(TorqueParser::ArgumentListContext* ctx) = 0;
  virtual void exitArgumentList(TorqueParser::ArgumentListContext* ctx) = 0;

  virtual void enterHelperCall(TorqueParser::HelperCallContext* ctx) = 0;
  virtual void exitHelperCall(TorqueParser::HelperCallContext* ctx) = 0;

  virtual void enterLabelReference(
      TorqueParser::LabelReferenceContext* ctx) = 0;
  virtual void exitLabelReference(TorqueParser::LabelReferenceContext* ctx) = 0;

  virtual void enterVariableDeclaration(
      TorqueParser::VariableDeclarationContext* ctx) = 0;
  virtual void exitVariableDeclaration(
      TorqueParser::VariableDeclarationContext* ctx) = 0;

  virtual void enterVariableDeclarationWithInitialization(
      TorqueParser::VariableDeclarationWithInitializationContext* ctx) = 0;
  virtual void exitVariableDeclarationWithInitialization(
      TorqueParser::VariableDeclarationWithInitializationContext* ctx) = 0;

  virtual void enterHelperCallStatement(
      TorqueParser::HelperCallStatementContext* ctx) = 0;
  virtual void exitHelperCallStatement(
      TorqueParser::HelperCallStatementContext* ctx) = 0;

  virtual void enterExpressionStatement(
      TorqueParser::ExpressionStatementContext* ctx) = 0;
  virtual void exitExpressionStatement(
      TorqueParser::ExpressionStatementContext* ctx) = 0;

  virtual void enterIfStatement(TorqueParser::IfStatementContext* ctx) = 0;
  virtual void exitIfStatement(TorqueParser::IfStatementContext* ctx) = 0;

  virtual void enterWhileLoop(TorqueParser::WhileLoopContext* ctx) = 0;
  virtual void exitWhileLoop(TorqueParser::WhileLoopContext* ctx) = 0;

  virtual void enterReturnStatement(
      TorqueParser::ReturnStatementContext* ctx) = 0;
  virtual void exitReturnStatement(
      TorqueParser::ReturnStatementContext* ctx) = 0;

  virtual void enterBreakStatement(
      TorqueParser::BreakStatementContext* ctx) = 0;
  virtual void exitBreakStatement(TorqueParser::BreakStatementContext* ctx) = 0;

  virtual void enterContinueStatement(
      TorqueParser::ContinueStatementContext* ctx) = 0;
  virtual void exitContinueStatement(
      TorqueParser::ContinueStatementContext* ctx) = 0;

  virtual void enterGotoStatement(TorqueParser::GotoStatementContext* ctx) = 0;
  virtual void exitGotoStatement(TorqueParser::GotoStatementContext* ctx) = 0;

  virtual void enterHandlerWithStatement(
      TorqueParser::HandlerWithStatementContext* ctx) = 0;
  virtual void exitHandlerWithStatement(
      TorqueParser::HandlerWithStatementContext* ctx) = 0;

  virtual void enterTryLabelStatement(
      TorqueParser::TryLabelStatementContext* ctx) = 0;
  virtual void exitTryLabelStatement(
      TorqueParser::TryLabelStatementContext* ctx) = 0;

  virtual void enterDiagnosticStatement(
      TorqueParser::DiagnosticStatementContext* ctx) = 0;
  virtual void exitDiagnosticStatement(
      TorqueParser::DiagnosticStatementContext* ctx) = 0;

  virtual void enterStatement(TorqueParser::StatementContext* ctx) = 0;
  virtual void exitStatement(TorqueParser::StatementContext* ctx) = 0;

  virtual void enterStatementList(TorqueParser::StatementListContext* ctx) = 0;
  virtual void exitStatementList(TorqueParser::StatementListContext* ctx) = 0;

  virtual void enterStatementScope(
      TorqueParser::StatementScopeContext* ctx) = 0;
  virtual void exitStatementScope(TorqueParser::StatementScopeContext* ctx) = 0;

  virtual void enterStatementBlock(
      TorqueParser::StatementBlockContext* ctx) = 0;
  virtual void exitStatementBlock(TorqueParser::StatementBlockContext* ctx) = 0;

  virtual void enterHelperBody(TorqueParser::HelperBodyContext* ctx) = 0;
  virtual void exitHelperBody(TorqueParser::HelperBodyContext* ctx) = 0;

  virtual void enterFieldDeclaration(
      TorqueParser::FieldDeclarationContext* ctx) = 0;
  virtual void exitFieldDeclaration(
      TorqueParser::FieldDeclarationContext* ctx) = 0;

  virtual void enterFieldListDeclaration(
      TorqueParser::FieldListDeclarationContext* ctx) = 0;
  virtual void exitFieldListDeclaration(
      TorqueParser::FieldListDeclarationContext* ctx) = 0;

  virtual void enterExtendsDeclaration(
      TorqueParser::ExtendsDeclarationContext* ctx) = 0;
  virtual void exitExtendsDeclaration(
      TorqueParser::ExtendsDeclarationContext* ctx) = 0;

  virtual void enterGeneratesDeclaration(
      TorqueParser::GeneratesDeclarationContext* ctx) = 0;
  virtual void exitGeneratesDeclaration(
      TorqueParser::GeneratesDeclarationContext* ctx) = 0;

  virtual void enterConstexprDeclaration(
      TorqueParser::ConstexprDeclarationContext* ctx) = 0;
  virtual void exitConstexprDeclaration(
      TorqueParser::ConstexprDeclarationContext* ctx) = 0;

  virtual void enterTypeDeclaration(
      TorqueParser::TypeDeclarationContext* ctx) = 0;
  virtual void exitTypeDeclaration(
      TorqueParser::TypeDeclarationContext* ctx) = 0;

  virtual void enterTypeAliasDeclaration(
      TorqueParser::TypeAliasDeclarationContext* ctx) = 0;
  virtual void exitTypeAliasDeclaration(
      TorqueParser::TypeAliasDeclarationContext* ctx) = 0;

  virtual void enterExternalBuiltin(
      TorqueParser::ExternalBuiltinContext* ctx) = 0;
  virtual void exitExternalBuiltin(
      TorqueParser::ExternalBuiltinContext* ctx) = 0;

  virtual void enterExternalMacro(TorqueParser::ExternalMacroContext* ctx) = 0;
  virtual void exitExternalMacro(TorqueParser::ExternalMacroContext* ctx) = 0;

  virtual void enterExternalRuntime(
      TorqueParser::ExternalRuntimeContext* ctx) = 0;
  virtual void exitExternalRuntime(
      TorqueParser::ExternalRuntimeContext* ctx) = 0;

  virtual void enterBuiltinDeclaration(
      TorqueParser::BuiltinDeclarationContext* ctx) = 0;
  virtual void exitBuiltinDeclaration(
      TorqueParser::BuiltinDeclarationContext* ctx) = 0;

  virtual void enterGenericSpecialization(
      TorqueParser::GenericSpecializationContext* ctx) = 0;
  virtual void exitGenericSpecialization(
      TorqueParser::GenericSpecializationContext* ctx) = 0;

  virtual void enterMacroDeclaration(
      TorqueParser::MacroDeclarationContext* ctx) = 0;
  virtual void exitMacroDeclaration(
      TorqueParser::MacroDeclarationContext* ctx) = 0;

  virtual void enterExternConstDeclaration(
      TorqueParser::ExternConstDeclarationContext* ctx) = 0;
  virtual void exitExternConstDeclaration(
      TorqueParser::ExternConstDeclarationContext* ctx) = 0;

  virtual void enterConstDeclaration(
      TorqueParser::ConstDeclarationContext* ctx) = 0;
  virtual void exitConstDeclaration(
      TorqueParser::ConstDeclarationContext* ctx) = 0;

  virtual void enterStructDeclaration(
      TorqueParser::StructDeclarationContext* ctx) = 0;
  virtual void exitStructDeclaration(
      TorqueParser::StructDeclarationContext* ctx) = 0;

  virtual void enterDeclaration(TorqueParser::DeclarationContext* ctx) = 0;
  virtual void exitDeclaration(TorqueParser::DeclarationContext* ctx) = 0;

  virtual void enterModuleDeclaration(
      TorqueParser::ModuleDeclarationContext* ctx) = 0;
  virtual void exitModuleDeclaration(
      TorqueParser::ModuleDeclarationContext* ctx) = 0;

  virtual void enterFile(TorqueParser::FileContext* ctx) = 0;
  virtual void exitFile(TorqueParser::FileContext* ctx) = 0;
};

#endif  // V8_TORQUE_TORQUELISTENER_H_