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

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: Rebased. 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 233 matching lines...) Expand 10 before | Expand all | Expand 10 after
244 log('Resolving...'); 244 log('Resolving...');
245 phase = Compiler.PHASE_RESOLVING; 245 phase = Compiler.PHASE_RESOLVING;
246 backend.enqueueHelpers(enqueuer.resolution); 246 backend.enqueueHelpers(enqueuer.resolution);
247 processQueueList(enqueuer.resolution, elementList); 247 processQueueList(enqueuer.resolution, elementList);
248 log('Resolved ${enqueuer.resolution.resolvedElements.length} elements.'); 248 log('Resolved ${enqueuer.resolution.resolvedElements.length} elements.');
249 } 249 }
250 250
251 void processQueueList(Enqueuer world, List<LibraryElement> elements) { 251 void processQueueList(Enqueuer world, List<LibraryElement> elements) {
252 backend.processNativeClasses(world, libraries.getValues()); 252 backend.processNativeClasses(world, libraries.getValues());
253 for (var library in elements) { 253 for (var library in elements) {
254 library.localMembers.forEach((element) { 254 library.forEachLocalMember((element) {
255 world.addToWorkList(element); 255 world.addToWorkList(element);
256 }); 256 });
257 } 257 }
258 progress.reset(); 258 progress.reset();
259 world.forEach((WorkItem work) { 259 world.forEach((WorkItem work) {
260 withCurrentElement(work.element, () => work.run(this, world)); 260 withCurrentElement(work.element, () => work.run(this, world));
261 }); 261 });
262 } 262 }
263 263
264 String codegen(WorkItem work, Enqueuer world) { 264 String codegen(WorkItem work, Enqueuer world) {
(...skipping 432 matching lines...) Expand 10 before | Expand all | Expand 10 after
697 var span = system.compiler.spanFromNode(node, script.uri); 697 var span = system.compiler.spanFromNode(node, script.uri);
698 return new Dart2JsLocation(script, span); 698 return new Dart2JsLocation(script, span);
699 } 699 }
700 } 700 }
701 return super.location; 701 return super.location;
702 } 702 }
703 703
704 void _ensureMembers() { 704 void _ensureMembers() {
705 if (_members == null) { 705 if (_members == null) {
706 _members = <String, Dart2JsMemberMirror>{}; 706 _members = <String, Dart2JsMemberMirror>{};
707 _class.localMembers.forEach((e) { 707 _class.forEachMember((_, e) {
708 for (var member in _convertElementMemberToMemberMirrors(this, e)) { 708 for (var member in _convertElementMemberToMemberMirrors(this, e)) {
709 _members[member.canonicalName] = member; 709 _members[member.canonicalName] = member;
710 } 710 }
711 }); 711 });
712 } 712 }
713 } 713 }
714 714
715 Map<Object, MemberMirror> get declaredMembers { 715 Map<Object, MemberMirror> get declaredMembers {
716 _ensureMembers(); 716 _ensureMembers();
717 return new ImmutableMapWrapper<Object, MemberMirror>(_members); 717 return new ImmutableMapWrapper<Object, MemberMirror>(_members);
(...skipping 614 matching lines...) Expand 10 before | Expand all | Expand 10 after
1332 bool get isSetter => _kind == Dart2JsMethodKind.SETTER; 1332 bool get isSetter => _kind == Dart2JsMethodKind.SETTER;
1333 1333
1334 bool get isOperator => _kind == Dart2JsMethodKind.OPERATOR; 1334 bool get isOperator => _kind == Dart2JsMethodKind.OPERATOR;
1335 1335
1336 String get operatorName => _operatorName; 1336 String get operatorName => _operatorName;
1337 1337
1338 Location get location { 1338 Location get location {
1339 var node = _function.parseNode(_diagnosticListener); 1339 var node = _function.parseNode(_diagnosticListener);
1340 if (node !== null) { 1340 if (node !== null) {
1341 var script = _function.getCompilationUnit().script; 1341 var script = _function.getCompilationUnit().script;
1342 if (_function.isPatched) {
1343 // TODO(ager): This should not be necessary when patch
1344 // support has been reworked.
1345 script = _function.patch.getCompilationUnit().script;
1346 }
1347 var span = system.compiler.spanFromNode(node, script.uri); 1342 var span = system.compiler.spanFromNode(node, script.uri);
1348 return new Dart2JsLocation(script, span); 1343 return new Dart2JsLocation(script, span);
1349 } 1344 }
1350 return super.location; 1345 return super.location;
1351 } 1346 }
1352 1347
1353 } 1348 }
1354 1349
1355 class Dart2JsFieldMirror extends Dart2JsElementMirror 1350 class Dart2JsFieldMirror extends Dart2JsElementMirror
1356 implements Dart2JsMemberMirror, FieldMirror { 1351 implements Dart2JsMemberMirror, FieldMirror {
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
1395 if (node !== null) { 1390 if (node !== null) {
1396 var span = system.compiler.spanFromNode(node, script.uri); 1391 var span = system.compiler.spanFromNode(node, script.uri);
1397 return new Dart2JsLocation(script, span); 1392 return new Dart2JsLocation(script, span);
1398 } else { 1393 } else {
1399 var span = system.compiler.spanFromElement(_variable); 1394 var span = system.compiler.spanFromElement(_variable);
1400 return new Dart2JsLocation(script, span); 1395 return new Dart2JsLocation(script, span);
1401 } 1396 }
1402 } 1397 }
1403 } 1398 }
1404 1399
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698