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

Side by Side Diff: pkg/compiler/lib/src/resolution/members.dart

Issue 1192103002: Support serialization of the compiler backbone. (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Created 5 years, 6 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 part of resolution; 5 part of resolution;
6 6
7 /** 7 /**
8 * Core implementation of resolution. 8 * Core implementation of resolution.
9 * 9 *
10 * Do not subclass or instantiate this class outside this library 10 * Do not subclass or instantiate this class outside this library
(...skipping 1934 matching lines...) Expand 10 before | Expand all | Expand 10 after
1945 } else { 1945 } else {
1946 selector = new Selector(SelectorKind.GETTER, name, callStructure); 1946 selector = new Selector(SelectorKind.GETTER, name, callStructure);
1947 } 1947 }
1948 AccessSemantics semantics = 1948 AccessSemantics semantics =
1949 computeStaticOrTopLevelAccessSemantics(node, member); 1949 computeStaticOrTopLevelAccessSemantics(node, member);
1950 if (node.isCall) { 1950 if (node.isCall) {
1951 bool isIncompatibleInvoke = false; 1951 bool isIncompatibleInvoke = false;
1952 switch (semantics.kind) { 1952 switch (semantics.kind) {
1953 case AccessKind.STATIC_METHOD: 1953 case AccessKind.STATIC_METHOD:
1954 case AccessKind.TOPLEVEL_METHOD: 1954 case AccessKind.TOPLEVEL_METHOD:
1955 MethodElementX method = semantics.element; 1955 MethodElement method = semantics.element;
1956 method.computeSignature(compiler); 1956 method.computeType(compiler);
1957 if (!callStructure.signatureApplies(method)) { 1957 if (!callStructure.signatureApplies(method)) {
1958 registry.registerThrowNoSuchMethod(); 1958 registry.registerThrowNoSuchMethod();
1959 registry.registerDynamicInvocation( 1959 registry.registerDynamicInvocation(
1960 new UniverseSelector(selector, null)); 1960 new UniverseSelector(selector, null));
1961 isIncompatibleInvoke = true; 1961 isIncompatibleInvoke = true;
1962 } else { 1962 } else {
1963 registry.registerStaticUse(semantics.element); 1963 registry.registerStaticUse(semantics.element);
1964 handleForeignCall(node, semantics.element, selector); 1964 handleForeignCall(node, semantics.element, selector);
1965 } 1965 }
1966 break; 1966 break;
(...skipping 1516 matching lines...) Expand 10 before | Expand all | Expand 10 after
3483 } 3483 }
3484 return const NoneResult(); 3484 return const NoneResult();
3485 } 3485 }
3486 } 3486 }
3487 3487
3488 /// Looks up [name] in [scope] and unwraps the result. 3488 /// Looks up [name] in [scope] and unwraps the result.
3489 Element lookupInScope(Compiler compiler, Node node, 3489 Element lookupInScope(Compiler compiler, Node node,
3490 Scope scope, String name) { 3490 Scope scope, String name) {
3491 return Elements.unwrap(scope.lookup(name), compiler, node); 3491 return Elements.unwrap(scope.lookup(name), compiler, node);
3492 } 3492 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698