Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(242)

Side by Side Diff: pkg/kernel/lib/interpreter/interpreter_visitor.dart

Issue 2722283003: Initial implementation of interpreter for Kernel (Closed)
Patch Set: Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 // Copyright 1(c) 2016, the Dart project authors. Please see the AUTHORS file
Kevin Millikin (Google) 2017/03/02 10:30:30 2017. A 1 (or maybe an L) has also crept in here.
2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file.
4
5 /// A library to help move super calls last in the initializer list.
6 library kernel.interpreter.interpreter_visitor;
7
8 import '../ast.dart';
9
10 abstract class ExpressionVisitor1<R> {
11 R defaultExpression1(Expression node, State state) => null;
Kevin Millikin (Google) 2017/03/02 10:30:30 We should also generalize all these methods to: R
12
13 R defaultBasicLiteral1(BasicLiteral node, State state) =>
14 defaultExpression1(node, state);
15
16 R visitInvalidExpression1(InvalidExpression node, State state) =>
Kevin Millikin (Google) 2017/03/02 10:30:30 We need the '1' on ExpressionVisitor1 and accept1
17 defaultExpression1(node, state);
18
19 R visitVariableGet1(VariableGet node, State state) =>
20 defaultExpression1(node, state);
21
22 R visitVariableSet1(VariableSet node, State state) =>
23 defaultExpression1(node, state);
24
25 R visitPropertyGet1(PropertyGet node, State state) =>
26 defaultExpression1(node, state);
27
28 R visitPropertySet1(PropertySet node, State state) =>
29 defaultExpression1(node, state);
30
31 R visitDirectPropertyGet1(DirectPropertyGet node, State state) =>
32 defaultExpression1(node, state);
33
34 R visitDirectPropertySet1(DirectPropertySet node, State state) =>
35 defaultExpression1(node, state);
36
37 R visitSuperPropertyGet1(SuperPropertyGet node, State state) =>
38 defaultExpression1(node, state);
39
40 R visitSuperPropertySet1(SuperPropertySet node, State state) =>
41 defaultExpression1(node, state);
42
43 R visitStaticGet1(StaticGet node, State state) =>
44 defaultExpression1(node, state);
45
46 R visitStaticSet1(StaticSet node, State state) =>
47 defaultExpression1(node, state);
48
49 R visitMethodInvocation1(MethodInvocation node, State state) =>
50 defaultExpression1(node, state);
51
52 R visitDirectMethodInvocation1(DirectMethodInvocation node, State state) =>
53 defaultExpression1(node, state);
54
55 R visitSuperMethodInvocation1(SuperMethodInvocation node, State state) =>
56 defaultExpression1(node, state);
57
58 R visitStaticInvocation1(StaticInvocation node, State state) =>
59 defaultExpression1(node, state);
60
61 R visitConstructorInvocation1(ConstructorInvocation node, State state) =>
62 defaultExpression1(node, state);
63
64 R visitNot1(Not node, State state) => defaultExpression1(node, state);
65
66 R visitLogicalExpression1(LogicalExpression node, State state) =>
67 defaultExpression1(node, state);
68
69 R visitConditionalExpression1(ConditionalExpression node, State state) =>
70 defaultExpression1(node, state);
71
72 R visitStringConcatenation1(StringConcatenation node, State state) =>
73 defaultExpression1(node, state);
74
75 R visitIsExpression1(IsExpression node, State state) =>
76 defaultExpression1(node, state);
77
78 R visitAsExpression1(AsExpression node, State state) =>
79 defaultExpression1(node, state);
80
81 R visitSymbolLiteral1(SymbolLiteral node, State state) =>
82 defaultExpression1(node, state);
83
84 R visitTypeLiteral1(TypeLiteral node, State state) =>
85 defaultExpression1(node, state);
86
87 R visitThisExpression1(ThisExpression node, State state) =>
88 defaultExpression1(node, state);
89
90 R visitRethrow1(Rethrow node, State state) => defaultExpression1(node, state);
91
92 R visitThrow1(Throw node, State state) => defaultExpression1(node, state);
93
94 R visitListLiteral1(ListLiteral node, State state) =>
95 defaultExpression1(node, state);
96
97 R visitMapLiteral1(MapLiteral node, State state) =>
98 defaultExpression1(node, state);
99
100 R visitAwaitExpression1(AwaitExpression node, State state) =>
101 defaultExpression1(node, state);
102
103 R visitFunctionExpression1(FunctionExpression node, State state) =>
104 defaultExpression1(node, state);
105
106 R visitStringLiteral1(StringLiteral node, State state) =>
107 defaultBasicLiteral1(node, state);
108
109 R visitIntLiteral1(IntLiteral node, State state) =>
110 defaultBasicLiteral1(node, state);
111
112 R visitDoubleLiteral1(DoubleLiteral node, State state) =>
113 defaultBasicLiteral1(node, state);
114
115 R visitBoolLiteral1(BoolLiteral node, State state) =>
116 defaultBasicLiteral1(node, state);
117
118 R visitNullLiteral1(NullLiteral node, State state) =>
119 defaultBasicLiteral1(node, state);
120
121 R visitLet1(Let node, State state) => defaultExpression1(node, state);
122
123 R visitLoadLibrary1(LoadLibrary node, State state) =>
124 defaultExpression1(node, state);
125
126 R visitCheckLibraryIsLoaded1(CheckLibraryIsLoaded node, State state) =>
127 defaultExpression1(node, state);
128 }
129
130 abstract class State {
Kevin Millikin (Google) 2017/03/02 10:30:30 If we eliminate the type State from the AST and vi
131 Map<String, Object> get environment;
132 }
OLDNEW
« pkg/kernel/lib/interpreter/interpreter.dart ('K') | « pkg/kernel/lib/interpreter/interpreter.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698