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

Unified Diff: pkg/compiler/lib/src/scanner/class_element_parser.dart

Issue 886773004: Supported versioned patching. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 5 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
Index: pkg/compiler/lib/src/scanner/class_element_parser.dart
diff --git a/pkg/compiler/lib/src/scanner/class_element_parser.dart b/pkg/compiler/lib/src/scanner/class_element_parser.dart
index ccd251da832e2850917e9af4280d2c75ae826014..27c7b9ff4278c921319648e5f60b0315962e7c61 100644
--- a/pkg/compiler/lib/src/scanner/class_element_parser.dart
+++ b/pkg/compiler/lib/src/scanner/class_element_parser.dart
@@ -99,16 +99,16 @@ class PartialClassElement extends ClassElementX with PartialElement {
}
class MemberListener extends NodeListener {
- final ClassElement enclosingElement;
+ final ClassElement enclosingClass;
MemberListener(DiagnosticListener listener,
- Element enclosingElement)
- : this.enclosingElement = enclosingElement,
+ ClassElement enclosingElement)
+ : this.enclosingClass = enclosingElement,
super(listener, enclosingElement.compilationUnit);
bool isConstructorName(Node nameNode) {
- if (enclosingElement == null ||
- enclosingElement.kind != ElementKind.CLASS) {
+ if (enclosingClass == null ||
+ enclosingClass.kind != ElementKind.CLASS) {
return false;
}
String name;
@@ -118,7 +118,7 @@ class MemberListener extends NodeListener {
Send send = nameNode.asSend();
name = send.receiver.asIdentifier().source;
}
- return enclosingElement.name == name;
+ return enclosingClass.name == name;
}
// TODO(johnniwinther): Remove this method.
@@ -138,10 +138,10 @@ class MemberListener extends NodeListener {
bool isUnary = identical(operator.token.next.next.stringValue, ')');
return Elements.constructOperatorName(operator.source, isUnary);
} else {
- if (receiver == null || receiver.source != enclosingElement.name) {
+ if (receiver == null || receiver.source != enclosingClass.name) {
listener.reportError(send.receiver,
MessageKind.INVALID_CONSTRUCTOR_NAME,
- {'name': enclosingElement.name});
+ {'name': enclosingClass.name});
}
return selector.source;
}
@@ -162,7 +162,7 @@ class MemberListener extends NodeListener {
name, beginToken, endToken,
ElementKind.GENERATIVE_CONSTRUCTOR,
method.modifiers,
- enclosingElement);
+ enclosingClass);
} else {
ElementKind kind = ElementKind.FUNCTION;
if (getOrSet != null) {
@@ -171,7 +171,7 @@ class MemberListener extends NodeListener {
}
memberElement =
new PartialFunctionElement(name, beginToken, getOrSet, endToken,
- kind, method.modifiers, enclosingElement,
+ kind, method.modifiers, enclosingClass,
!method.hasBody());
}
addMember(memberElement);
@@ -184,10 +184,10 @@ class MemberListener extends NodeListener {
String name = getMethodNameHack(method.name);
Identifier singleIdentifierName = method.name.asIdentifier();
if (singleIdentifierName != null && singleIdentifierName.source == name) {
- if (name != enclosingElement.name) {
+ if (name != enclosingClass.name) {
listener.reportError(singleIdentifierName,
MessageKind.INVALID_UNNAMED_CONSTRUCTOR_NAME,
- {'name': enclosingElement.name});
+ {'name': enclosingClass.name});
}
}
ElementKind kind = ElementKind.FUNCTION;
@@ -195,7 +195,7 @@ class MemberListener extends NodeListener {
name, beginToken, endToken,
ElementKind.FUNCTION,
method.modifiers,
- enclosingElement);
+ enclosingClass);
addMember(memberElement);
}
@@ -207,11 +207,11 @@ class MemberListener extends NodeListener {
pushNode(null);
void buildFieldElement(Identifier name, VariableList fields) {
Element element =
- new FieldElementX(name, enclosingElement, fields);
+ new FieldElementX(name, enclosingClass, fields);
addMember(element);
}
buildFieldElements(modifiers, variableDefinitions.definitions,
- enclosingElement,
+ enclosingClass,
buildFieldElement, beginToken, endToken,
hasParseError);
}
@@ -226,12 +226,16 @@ class MemberListener extends NodeListener {
pushNode(null);
}
- void addMember(Element memberElement) {
+ void addMetadata(Element memberElement) {
for (Link link = metadata; !link.isEmpty; link = link.tail) {
memberElement.addMetadata(link.head);
}
metadata = const Link<MetadataAnnotation>();
- enclosingElement.addMember(memberElement, listener);
+ }
+
+ void addMember(Element memberElement) {
+ addMetadata(memberElement);
+ enclosingClass.addMember(memberElement, listener);
}
void endMetadata(Token beginToken, Token periodBeforeName, Token endToken) {

Powered by Google App Engine
This is Rietveld 408576698