| OLD | NEW |
| 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2011, 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 scanner; | 5 part of scanner; |
| 6 | 6 |
| 7 class ClassElementParser extends PartialParser { | 7 class ClassElementParser extends PartialParser { |
| 8 ClassElementParser(Listener listener) : super(listener); | 8 ClassElementParser(Listener listener) : super(listener); |
| 9 | 9 |
| 10 Token parseClassBody(Token token) => fullParseClassBody(token); | 10 Token parseClassBody(Token token) => fullParseClassBody(token); |
| (...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 125 } else if (getOrSet != null) { | 125 } else if (getOrSet != null) { |
| 126 kind = (identical(getOrSet.stringValue, 'get')) | 126 kind = (identical(getOrSet.stringValue, 'get')) |
| 127 ? ElementKind.GETTER : ElementKind.SETTER; | 127 ? ElementKind.GETTER : ElementKind.SETTER; |
| 128 } | 128 } |
| 129 Element memberElement = | 129 Element memberElement = |
| 130 new PartialFunctionElement(name, beginToken, getOrSet, endToken, | 130 new PartialFunctionElement(name, beginToken, getOrSet, endToken, |
| 131 kind, method.modifiers, enclosingElement); | 131 kind, method.modifiers, enclosingElement); |
| 132 addMember(memberElement); | 132 addMember(memberElement); |
| 133 } | 133 } |
| 134 | 134 |
| 135 void endFactoryMethod(Token factoryKeyword, Token periodBeforeName, | 135 void endFactoryMethod(Token beginToken, Token endToken) { |
| 136 Token endToken) { | 136 super.endFactoryMethod(beginToken, endToken); |
| 137 super.endFactoryMethod(factoryKeyword, periodBeforeName, endToken); | |
| 138 FunctionExpression method = popNode(); | 137 FunctionExpression method = popNode(); |
| 139 pushNode(null); | 138 pushNode(null); |
| 140 SourceString name = getMethodNameHack(method.name); | 139 SourceString name = getMethodNameHack(method.name); |
| 141 ElementKind kind = ElementKind.FUNCTION; | 140 ElementKind kind = ElementKind.FUNCTION; |
| 142 Element memberElement = | 141 Element memberElement = |
| 143 new PartialFunctionElement(name, factoryKeyword, null, endToken, | 142 new PartialFunctionElement(name, beginToken, null, endToken, |
| 144 kind, method.modifiers, enclosingElement); | 143 kind, method.modifiers, enclosingElement); |
| 145 addMember(memberElement); | 144 addMember(memberElement); |
| 146 } | 145 } |
| 147 | 146 |
| 148 void endFields(int count, Token beginToken, Token endToken) { | 147 void endFields(int count, Token beginToken, Token endToken) { |
| 149 super.endFields(count, beginToken, endToken); | 148 super.endFields(count, beginToken, endToken); |
| 150 VariableDefinitions variableDefinitions = popNode(); | 149 VariableDefinitions variableDefinitions = popNode(); |
| 151 Modifiers modifiers = variableDefinitions.modifiers; | 150 Modifiers modifiers = variableDefinitions.modifiers; |
| 152 pushNode(null); | 151 pushNode(null); |
| 153 void buildFieldElement(SourceString name, Element fields) { | 152 void buildFieldElement(SourceString name, Element fields) { |
| (...skipping 17 matching lines...) Expand all Loading... |
| 171 } | 170 } |
| 172 | 171 |
| 173 void addMember(Element memberElement) { | 172 void addMember(Element memberElement) { |
| 174 for (Link link = metadata; !link.isEmpty; link = link.tail) { | 173 for (Link link = metadata; !link.isEmpty; link = link.tail) { |
| 175 memberElement.addMetadata(link.head); | 174 memberElement.addMetadata(link.head); |
| 176 } | 175 } |
| 177 metadata = const Link<MetadataAnnotation>(); | 176 metadata = const Link<MetadataAnnotation>(); |
| 178 enclosingElement.addMember(memberElement, listener); | 177 enclosingElement.addMember(memberElement, listener); |
| 179 } | 178 } |
| 180 } | 179 } |
| OLD | NEW |