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

Side by Side Diff: pkg/dartdoc/lib/src/mirrors/dart2js_mirror.dart

Issue 10905305: Patch refactoring. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Replaced includeInjectedMembers by implementation Created 8 years, 2 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 | Annotate | Revision Log
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('mirrors.dart2js'); 5 #library('mirrors.dart2js');
6 6
7 #import('dart:io'); 7 #import('dart:io');
8 #import('dart:uri'); 8 #import('dart:uri');
9 9
10 #import('../../../../../lib/compiler/compiler.dart', prefix: 'diagnostics'); 10 #import('../../../../../lib/compiler/compiler.dart', prefix: 'diagnostics');
(...skipping 228 matching lines...) Expand 10 before | Expand all | Expand 10 after
239 log('Resolving...'); 239 log('Resolving...');
240 phase = Compiler.PHASE_RESOLVING; 240 phase = Compiler.PHASE_RESOLVING;
241 backend.enqueueHelpers(enqueuer.resolution); 241 backend.enqueueHelpers(enqueuer.resolution);
242 processQueueList(enqueuer.resolution, elementList); 242 processQueueList(enqueuer.resolution, elementList);
243 log('Resolved ${enqueuer.resolution.resolvedElements.length} elements.'); 243 log('Resolved ${enqueuer.resolution.resolvedElements.length} elements.');
244 } 244 }
245 245
246 void processQueueList(Enqueuer world, List<LibraryElement> elements) { 246 void processQueueList(Enqueuer world, List<LibraryElement> elements) {
247 backend.processNativeClasses(world, libraries.getValues()); 247 backend.processNativeClasses(world, libraries.getValues());
248 for (var library in elements) { 248 for (var library in elements) {
249 library.localMembers.forEach((element) { 249 library.forEachLocalMember((element) {
250 world.addToWorkList(element); 250 world.addToWorkList(element);
251 }); 251 });
252 } 252 }
253 progress.reset(); 253 progress.reset();
254 world.forEach((WorkItem work) { 254 world.forEach((WorkItem work) {
255 withCurrentElement(work.element, () => work.run(this, world)); 255 withCurrentElement(work.element, () => work.run(this, world));
256 }); 256 });
257 } 257 }
258 258
259 String codegen(WorkItem work, Enqueuer world) { 259 String codegen(WorkItem work, Enqueuer world) {
(...skipping 433 matching lines...) Expand 10 before | Expand all | Expand 10 after
693 var span = system.compiler.spanFromNode(node, script.uri); 693 var span = system.compiler.spanFromNode(node, script.uri);
694 return new Dart2JsLocation(script, span); 694 return new Dart2JsLocation(script, span);
695 } 695 }
696 } 696 }
697 return super.location; 697 return super.location;
698 } 698 }
699 699
700 void _ensureMembers() { 700 void _ensureMembers() {
701 if (_members == null) { 701 if (_members == null) {
702 _members = <String, Dart2JsMemberMirror>{}; 702 _members = <String, Dart2JsMemberMirror>{};
703 _class.localMembers.forEach((e) { 703 _class.forEachMember((_, e) {
704 for (var member in _convertElementMemberToMemberMirrors(this, e)) { 704 for (var member in _convertElementMemberToMemberMirrors(this, e)) {
705 _members[member.canonicalName] = member; 705 _members[member.canonicalName] = member;
706 } 706 }
707 }); 707 });
708 } 708 }
709 } 709 }
710 710
711 Map<Object, MemberMirror> get declaredMembers { 711 Map<Object, MemberMirror> get declaredMembers {
712 _ensureMembers(); 712 _ensureMembers();
713 return new ImmutableMapWrapper<Object, MemberMirror>(_members); 713 return new ImmutableMapWrapper<Object, MemberMirror>(_members);
(...skipping 614 matching lines...) Expand 10 before | Expand all | Expand 10 after
1328 bool get isSetter => _kind == Dart2JsMethodKind.SETTER; 1328 bool get isSetter => _kind == Dart2JsMethodKind.SETTER;
1329 1329
1330 bool get isOperator => _kind == Dart2JsMethodKind.OPERATOR; 1330 bool get isOperator => _kind == Dart2JsMethodKind.OPERATOR;
1331 1331
1332 String get operatorName => _operatorName; 1332 String get operatorName => _operatorName;
1333 1333
1334 Location get location { 1334 Location get location {
1335 var node = _function.parseNode(_diagnosticListener); 1335 var node = _function.parseNode(_diagnosticListener);
1336 if (node !== null) { 1336 if (node !== null) {
1337 var script = _function.getCompilationUnit().script; 1337 var script = _function.getCompilationUnit().script;
1338 if (_function.isPatched) {
1339 // TODO(ager): This should not be necessary when patch
1340 // support has been reworked.
1341 script = _function.patch.getCompilationUnit().script;
1342 }
1343 var span = system.compiler.spanFromNode(node, script.uri); 1338 var span = system.compiler.spanFromNode(node, script.uri);
1344 return new Dart2JsLocation(script, span); 1339 return new Dart2JsLocation(script, span);
1345 } 1340 }
1346 return super.location; 1341 return super.location;
1347 } 1342 }
1348 1343
1349 } 1344 }
1350 1345
1351 class Dart2JsFieldMirror extends Dart2JsElementMirror 1346 class Dart2JsFieldMirror extends Dart2JsElementMirror
1352 implements Dart2JsMemberMirror, FieldMirror { 1347 implements Dart2JsMemberMirror, FieldMirror {
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
1391 if (node !== null) { 1386 if (node !== null) {
1392 var span = system.compiler.spanFromNode(node, script.uri); 1387 var span = system.compiler.spanFromNode(node, script.uri);
1393 return new Dart2JsLocation(script, span); 1388 return new Dart2JsLocation(script, span);
1394 } else { 1389 } else {
1395 var span = system.compiler.spanFromElement(_variable); 1390 var span = system.compiler.spanFromElement(_variable);
1396 return new Dart2JsLocation(script, span); 1391 return new Dart2JsLocation(script, span);
1397 } 1392 }
1398 } 1393 }
1399 } 1394 }
1400 1395
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698