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

Side by Side Diff: pkg/compiler/lib/src/types/types.dart

Issue 2656583003: Add inference test functionality based on code point id. (Closed)
Patch Set: Updated cf. comments Created 3 years, 10 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
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 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. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 library types; 5 library types;
6 6
7 import '../closure.dart' show SynthesizedCallMethodElementX; 7 import '../closure.dart' show SynthesizedCallMethodElementX;
8 import '../common.dart' show invariant; 8 import '../common.dart' show invariant;
9 import '../common/tasks.dart' show CompilerTask; 9 import '../common/tasks.dart' show CompilerTask;
10 import '../compiler.dart' show Compiler; 10 import '../compiler.dart' show Compiler;
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after
121 /// a single element. 121 /// a single element.
122 class GlobalTypeInferenceElementData { 122 class GlobalTypeInferenceElementData {
123 Map<Object, TypeMask> _typeMasks; 123 Map<Object, TypeMask> _typeMasks;
124 124
125 TypeMask _get(Object node) => _typeMasks != null ? _typeMasks[node] : null; 125 TypeMask _get(Object node) => _typeMasks != null ? _typeMasks[node] : null;
126 void _set(Object node, TypeMask mask) { 126 void _set(Object node, TypeMask mask) {
127 _typeMasks ??= new Maplet<Object, TypeMask>(); 127 _typeMasks ??= new Maplet<Object, TypeMask>();
128 _typeMasks[node] = mask; 128 _typeMasks[node] = mask;
129 } 129 }
130 130
131 TypeMask typeOfSend(Node node) => _get(node); 131 TypeMask typeOfSend(Send node) => _get(node);
132 TypeMask typeOfGetter(SendSet node) => _get(node.selector); 132 TypeMask typeOfGetter(SendSet node) => _get(node.selector);
133 TypeMask typeOfOperator(SendSet node) => _get(node.assignmentOperator); 133 TypeMask typeOfOperator(SendSet node) => _get(node.assignmentOperator);
134 134
135 void setTypeMask(Node node, TypeMask mask) { 135 void setTypeMask(Send node, TypeMask mask) {
136 _set(node, mask); 136 _set(node, mask);
137 } 137 }
138 138
139 void setGetterTypeMaskInComplexSendSet(SendSet node, TypeMask mask) { 139 void setGetterTypeMaskInComplexSendSet(SendSet node, TypeMask mask) {
140 _set(node.selector, mask); 140 _set(node.selector, mask);
141 } 141 }
142 142
143 void setOperatorTypeMaskInComplexSendSet(SendSet node, TypeMask mask) { 143 void setOperatorTypeMaskInComplexSendSet(SendSet node, TypeMask mask) {
144 _set(node.assignmentOperator, mask); 144 _set(node.assignmentOperator, mask);
145 } 145 }
(...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after
257 measure(() { 257 measure(() {
258 typesInferrerInternal ??= 258 typesInferrerInternal ??=
259 new TypeGraphInferrer(compiler, closedWorld, closedWorldRefiner); 259 new TypeGraphInferrer(compiler, closedWorld, closedWorldRefiner);
260 typesInferrerInternal.analyzeMain(mainElement); 260 typesInferrerInternal.analyzeMain(mainElement);
261 typesInferrerInternal.clear(); 261 typesInferrerInternal.clear();
262 results = new GlobalTypeInferenceResults(typesInferrerInternal, compiler, 262 results = new GlobalTypeInferenceResults(typesInferrerInternal, compiler,
263 closedWorld, typesInferrerInternal.inferrer.types); 263 closedWorld, typesInferrerInternal.inferrer.types);
264 }); 264 });
265 } 265 }
266 } 266 }
OLDNEW
« no previous file with comments | « pkg/compiler/lib/src/inferrer/builder.dart ('k') | tests/compiler/dart2js/annotated_code_helper.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698