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

Side by Side Diff: pkg/compiler/lib/src/common/backend_api.dart

Issue 2685673004: Handle Creates and Returns annotations in KernelBehaviorBuilder (Closed)
Patch Set: Updated cf. comment 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
« no previous file with comments | « no previous file | pkg/compiler/lib/src/js_backend/backend_serialization.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 dart2js.backend_api; 5 library dart2js.backend_api;
6 6
7 import 'dart:async' show Future;
8
9 import '../common.dart'; 7 import '../common.dart';
10 import '../common/codegen.dart' show CodegenImpact; 8 import '../common/codegen.dart' show CodegenImpact;
11 import '../common/resolution.dart' show ResolutionImpact, Frontend, Target; 9 import '../common/resolution.dart' show ResolutionImpact;
12 import '../compile_time_constants.dart'
13 show BackendConstantEnvironment, ConstantCompilerTask;
14 import '../compiler.dart' show Compiler;
15 import '../constants/constant_system.dart' show ConstantSystem;
16 import '../constants/expressions.dart' show ConstantExpression; 10 import '../constants/expressions.dart' show ConstantExpression;
17 import '../constants/values.dart' show ConstantValue;
18 import '../elements/types.dart'; 11 import '../elements/types.dart';
19 import '../elements/resolution_types.dart' 12 import '../elements/resolution_types.dart'
20 show ResolutionDartType, ResolutionInterfaceType; 13 show ResolutionDartType, ResolutionInterfaceType;
21 import '../elements/elements.dart'
22 show
23 ClassElement,
24 Element,
25 FunctionElement,
26 MemberElement,
27 MethodElement,
28 LibraryElement;
29 import '../elements/entities.dart'; 14 import '../elements/entities.dart';
30 import '../enqueue.dart' show Enqueuer, EnqueueTask, ResolutionEnqueuer; 15 import '../enqueue.dart' show ResolutionEnqueuer;
31 import '../io/code_output.dart' show CodeBuffer;
32 import '../io/source_information.dart' show SourceInformationStrategy;
33 import '../js_backend/backend_helpers.dart' as js_backend show BackendHelpers;
34 import '../js_backend/js_backend.dart' as js_backend;
35 import '../library_loader.dart' show LibraryLoader, LoadedLibraries;
36 import '../native/native.dart' as native show NativeEnqueuer, maybeEnableNative;
37 import '../patch_parser.dart'
38 show checkNativeAnnotation, checkJsInteropAnnotation;
39 import '../serialization/serialization.dart' 16 import '../serialization/serialization.dart'
40 show DeserializerPlugin, SerializerPlugin; 17 show DeserializerPlugin, SerializerPlugin;
41 import '../tree/tree.dart' show Node; 18 import '../tree/tree.dart' show Node;
42 import '../universe/world_impact.dart' 19 import '../universe/world_impact.dart' show WorldImpact;
43 show ImpactStrategy, WorldImpact, WorldImpactBuilder;
44 import '../world.dart' show ClosedWorld, ClosedWorldRefiner;
45 import 'codegen.dart' show CodegenWorkItem;
46 import 'tasks.dart' show CompilerTask;
47 20
48 /// Interface for resolving native data for a target specific element. 21 /// Interface for resolving native data for a target specific element.
49 abstract class NativeRegistry { 22 abstract class NativeRegistry {
50 /// Registers [nativeData] as part of the resolution impact. 23 /// Registers [nativeData] as part of the resolution impact.
51 void registerNativeData(dynamic nativeData); 24 void registerNativeData(dynamic nativeData);
52 } 25 }
53 26
54 /// Interface for resolving calls to foreign functions. 27 /// Interface for resolving calls to foreign functions.
55 abstract class ForeignResolver { 28 abstract class ForeignResolver {
56 /// Returns the constant expression of [node], or `null` if [node] is not 29 /// Returns the constant expression of [node], or `null` if [node] is not
(...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after
216 InterfaceType getConstantMapTypeFor(InterfaceType sourceType, 189 InterfaceType getConstantMapTypeFor(InterfaceType sourceType,
217 {bool hasProtoKey: false, bool onlyStringKeys: false}); 190 {bool hasProtoKey: false, bool onlyStringKeys: false});
218 191
219 /// Returns the type of the constant symbol implementation class. 192 /// Returns the type of the constant symbol implementation class.
220 InterfaceType get symbolType; 193 InterfaceType get symbolType;
221 194
222 /// Returns the field of the constant symbol implementation class that hold 195 /// Returns the field of the constant symbol implementation class that hold
223 /// its internal name. 196 /// its internal name.
224 FieldEntity get symbolField; 197 FieldEntity get symbolField;
225 } 198 }
OLDNEW
« no previous file with comments | « no previous file | pkg/compiler/lib/src/js_backend/backend_serialization.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698