| OLD | NEW |
| 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 /** | 5 /** |
| 6 * This generates the reference documentation for the core libraries that come | 6 * This generates the reference documentation for the core libraries that come |
| 7 * with dart. It is built on top of dartdoc, which is a general-purpose library | 7 * with dart. It is built on top of dartdoc, which is a general-purpose library |
| 8 * for generating docs from any Dart code. This library extends that to include | 8 * for generating docs from any Dart code. This library extends that to include |
| 9 * additional information and styling specific to our standard library. | 9 * additional information and styling specific to our standard library. |
| 10 * | 10 * |
| (...skipping 470 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 481 | 481 |
| 482 /** | 482 /** |
| 483 * Gets the MDN-scraped docs for [member], or `null` if this type isn't | 483 * Gets the MDN-scraped docs for [member], or `null` if this type isn't |
| 484 * scraped from MDN. | 484 * scraped from MDN. |
| 485 */ | 485 */ |
| 486 includeMdnMemberComment(MemberMirror member) { | 486 includeMdnMemberComment(MemberMirror member) { |
| 487 var library = findLibrary(member); | 487 var library = findLibrary(member); |
| 488 if (library.simpleName() == 'html') { | 488 if (library.simpleName() == 'html') { |
| 489 // If it's an HTML type, try to map it to a base DOM type so we can find | 489 // If it's an HTML type, try to map it to a base DOM type so we can find |
| 490 // the MDN docs. | 490 // the MDN docs. |
| 491 final domMembers = _diff.htmlToDom[member]; | 491 final domMembers = _diff.htmlToDom[member.qualifiedName()]; |
| 492 | 492 |
| 493 // Couldn't find a DOM type. | 493 // Couldn't find a DOM type. |
| 494 if ((domMembers == null) || (domMembers.length != 1)) return null; | 494 if ((domMembers == null) || (domMembers.length != 1)) return null; |
| 495 | 495 |
| 496 // Use the corresponding DOM member when searching MDN. | 496 // Use the corresponding DOM member when searching MDN. |
| 497 // TODO(rnystrom): Shame there isn't a simpler way to get the one item | 497 // TODO(rnystrom): Shame there isn't a simpler way to get the one item |
| 498 // out of a singleton Set. | 498 // out of a singleton Set. |
| 499 member = domMembers.iterator().next(); | 499 member = domMembers.iterator().next(); |
| 500 } else if (library.simpleName() != 'dom') { | 500 } else if (library.simpleName() != 'dom') { |
| 501 // Not a DOM type. | 501 // Not a DOM type. |
| 502 return null; | 502 return null; |
| 503 } | 503 } |
| 504 | 504 |
| 505 // Ignore top-level functions. | 505 // Ignore top-level functions. |
| 506 if (member.isTopLevel) return null; | 506 if (member.isTopLevel) return null; |
| 507 | 507 |
| 508 final mdnType = mdn[member.surroundingDeclaration().simpleName()]; | 508 final mdnType = mdn[member.surroundingDeclaration().simpleName()]; |
| 509 if (mdnType == null) return null; | 509 if (mdnType == null) return null; |
| 510 var nameToFind = member.simpleName(); | 510 var nameToFind = member.simpleName(); |
| 511 if (nameToFind.startsWith(GET_PREFIX)) { | |
| 512 nameToFind = nameToFind.substring(GET_PREFIX.length); | |
| 513 } | |
| 514 var mdnMember = null; | 511 var mdnMember = null; |
| 515 for (final candidateMember in mdnType['members']) { | 512 for (final candidateMember in mdnType['members']) { |
| 516 if (candidateMember['name'] == nameToFind) { | 513 if (candidateMember['name'] == nameToFind) { |
| 517 mdnMember = candidateMember; | 514 mdnMember = candidateMember; |
| 518 break; | 515 break; |
| 519 } | 516 } |
| 520 } | 517 } |
| 521 | 518 |
| 522 if (mdnMember == null) return null; | 519 if (mdnMember == null) return null; |
| 523 | 520 |
| (...skipping 10 matching lines...) Expand all Loading... |
| 534 final typeName = member.surroundingDeclaration().simpleName(); | 531 final typeName = member.surroundingDeclaration().simpleName(); |
| 535 var memberName = '$typeName.${member.simpleName()}'; | 532 var memberName = '$typeName.${member.simpleName()}'; |
| 536 if (member.isConstructor || member.isFactory) { | 533 if (member.isConstructor || member.isFactory) { |
| 537 final separator = member.constructorName == '' ? '' : '.'; | 534 final separator = member.constructorName == '' ? '' : '.'; |
| 538 memberName = 'new $typeName$separator${member.constructorName}'; | 535 memberName = 'new $typeName$separator${member.constructorName}'; |
| 539 } | 536 } |
| 540 | 537 |
| 541 return a(memberUrl(member), memberName); | 538 return a(memberUrl(member), memberName); |
| 542 } | 539 } |
| 543 } | 540 } |
| OLD | NEW |