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

Unified Diff: pkg/fletchc/lib/src/fletch_registry.dart

Issue 1659163007: Rename fletch -> dartino (Closed) Base URL: https://github.com/dartino/sdk.git@master
Patch Set: address comments Created 4 years, 11 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « pkg/fletchc/lib/src/fletch_native_descriptor.dart ('k') | pkg/fletchc/lib/src/fletch_selector.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/fletchc/lib/src/fletch_registry.dart
diff --git a/pkg/fletchc/lib/src/fletch_registry.dart b/pkg/fletchc/lib/src/fletch_registry.dart
deleted file mode 100644
index 4ed7f3c9a93424b3d1ad8cc273de388bac19b908..0000000000000000000000000000000000000000
--- a/pkg/fletchc/lib/src/fletch_registry.dart
+++ /dev/null
@@ -1,126 +0,0 @@
-// Copyright (c) 2015, the Dartino project authors. Please see the AUTHORS file
-// for details. All rights reserved. Use of this source code is governed by a
-// BSD-style license that can be found in the LICENSE.md file.
-
-library fletchc.fletch_codegen_registry;
-
-import 'package:compiler/src/compiler.dart' show
- GlobalDependencyRegistry;
-
-import 'package:compiler/src/common/codegen.dart' show
- CodegenRegistry;
-
-import 'package:compiler/src/common/registry.dart' show
- Registry;
-
-import 'package:compiler/src/universe/selector.dart' show
- Selector;
-
-import 'package:compiler/src/universe/use.dart' show
- DynamicUse,
- StaticUse;
-
-import 'package:compiler/src/elements/elements.dart' show
- ClassElement,
- Element,
- FunctionElement,
- LocalElement;
-
-import 'package:compiler/src/dart_types.dart' show
- DartType,
- InterfaceType;
-
-import 'fletch_compiler_implementation.dart' show
- FletchCompilerImplementation;
-
-import 'fletch_enqueuer.dart' show
- FletchEnqueuer;
-
-/// Represents ways a function can used as a closure. See also [Closurization]
-/// in [./dynamic_call_enqueuer.dart].
-enum ClosureKind {
- // Notes:
- //
- // * We don't need to distinguish between instance/static/top-level
- // tear-offs. This information is implicit in the function whose usage is
- // described..
- //
- // * [localFunction] is sufficiently different from [tearOff], that it
- // probably leads to less confusion having separate kinds; we don't normally
- // refer to a local function closure as a "tear-off". But the information is
- // implicit in the associated element.
- //
- // * [functionLike] is different from [tearOff] as the former will not imply
- // a synthetic class (stubs are added to the enclosing/holder class)
- //
- // * [superTearOff] is probably redundant with [tearOff].
-
- /// The result of getting a member function (this can be an instance, a
- /// static, or top-level function). See also [functionLikeTearOff].
- tearOff,
-
- /// The "call" method of a class that has a call method (and thus implements
- /// [Function])
- functionLike,
-
- /// The result of getting an instance method named "call"
- functionLikeTearOff,
-
- /// A local function (aka closure) that has escaped
- localFunction,
-
- /// The result of getting a super instance function
- superTearOff,
-}
-
-class FletchRegistry {
- final FletchEnqueuer world;
-
- FletchRegistry(FletchCompilerImplementation compiler)
- : world = compiler.enqueuer.codegen;
-
- void registerStaticUse(StaticUse staticUse) {
- // TODO(ahe): Call a different method.
- world.registerStaticUse(staticUse);
- }
-
- void registerInstantiatedClass(ClassElement element) {
- world.registerInstantiatedType(element.rawType);
- }
-
- void registerDynamicUse(Selector selector) {
- world.registerDynamicUse(new DynamicUse(selector, null));
- }
-
- void registerInstantiatedType(InterfaceType type) {
- world.registerInstantiatedType(type);
- }
-
- void registerIsCheck(DartType type) {
- world.registerIsCheck(type);
- }
-
- void registerLocalInvoke(LocalElement element, Selector selector) {
- world.recordElementUsage(element, selector);
- }
-
- void registerClosurization(FunctionElement function, ClosureKind kind) {
- switch (kind) {
- case ClosureKind.superTearOff:
- case ClosureKind.tearOff:
- assert(function.memberContext == function);
- break;
-
- case ClosureKind.functionLike:
- case ClosureKind.functionLikeTearOff:
- assert(function.memberContext == function);
- assert(function.isInstanceMember);
- assert(function.name == "call");
- break;
-
- case ClosureKind.localFunction:
- assert(function.memberContext != function);
- }
- world.dynamicCallEnqueuer.enqueueClosure(function, kind);
- }
-}
« no previous file with comments | « pkg/fletchc/lib/src/fletch_native_descriptor.dart ('k') | pkg/fletchc/lib/src/fletch_selector.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698