Skip to content

Commit bd10c53

Browse files
committed
merge to master
2 parents da93979 + bd682be commit bd10c53

File tree

8 files changed

+36
-16
lines changed

8 files changed

+36
-16
lines changed

lib/src/model.dart

Lines changed: 21 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -873,12 +873,12 @@ class Field extends ModelElement
873873
void _setModelType() {
874874
if (hasGetter) {
875875
var t = _field.getter.returnType;
876-
_modelType = new ElementType(t,
877-
new ModelElement.from(t.element, package._getLibraryFor(t.element)));
876+
_modelType = new ElementType(
877+
t, new ModelElement.from(t.element, _findLibraryFor(t.element)));
878878
} else {
879879
var s = _field.setter.parameters.first.type;
880-
_modelType = new ElementType(s,
881-
new ModelElement.from(s.element, package._getLibraryFor(s.element)));
880+
_modelType = new ElementType(
881+
s, new ModelElement.from(s.element, _findLibraryFor(s.element)));
882882
}
883883
}
884884
}
@@ -1677,6 +1677,19 @@ abstract class ModelElement implements Comparable, Nameable, Documentable {
16771677
return '<a ${classContent}href="${href}">$name</a>';
16781678
}
16791679

1680+
// TODO(keertip): consolidate all the find library methods
1681+
Library _findLibraryFor(Element e) {
1682+
var element = e.getAncestor((l) => l is LibraryElement);
1683+
var lib;
1684+
if (element != null) {
1685+
lib = package.findLibraryFor(element);
1686+
}
1687+
if (lib == null) {
1688+
lib = package._getLibraryFor(e);
1689+
}
1690+
return lib;
1691+
}
1692+
16801693
// process the {@example ...} in comments and inject the example
16811694
// code into the doc commment.
16821695
// {@example core/ts/bootstrap/bootstrap.ts region='bootstrap'}
@@ -1926,12 +1939,13 @@ class Package implements Nameable, Documentable {
19261939
return null;
19271940
}
19281941

1929-
Library lib = elementLibaryMap['${e.kind}.${e.name}'];
1942+
Library lib = elementLibaryMap['${e.kind}.${e.name}.${e.enclosingElement}'];
19301943
if (lib != null) return lib;
19311944
lib =
19321945
libraries.firstWhere((l) => l.hasInExportedNamespace(e), orElse: () {});
19331946
if (lib != null) {
1934-
elementLibaryMap.putIfAbsent('${e.kind}.${e.name}', () => lib);
1947+
elementLibaryMap.putIfAbsent(
1948+
'${e.kind}.${e.name}.${e.enclosingElement}', () => lib);
19351949
return lib;
19361950
}
19371951
return new Library(e.library, this);
@@ -1955,7 +1969,7 @@ class Parameter extends ModelElement implements EnclosedElement {
19551969
: super(element, library) {
19561970
var t = _parameter.type;
19571971
_modelType = new ElementType(
1958-
t, new ModelElement.from(t.element, package._getLibraryFor(t.element)));
1972+
t, new ModelElement.from(t.element, _findLibraryFor(t.element)));
19591973
}
19601974

19611975
String get defaultValue {

pubspec.lock

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ packages:
66
name: analyzer
77
url: "https://pub.dartlang.org"
88
source: hosted
9-
version: "0.27.3-alpha.7"
9+
version: "0.27.4-alpha.18"
1010
ansicolor:
1111
description:
1212
name: ansicolor
@@ -66,7 +66,7 @@ packages:
6666
name: crypto
6767
url: "https://pub.dartlang.org"
6868
source: hosted
69-
version: "0.9.2+1"
69+
version: "2.0.1"
7070
csslib:
7171
description:
7272
name: csslib
@@ -109,6 +109,12 @@ packages:
109109
url: "https://pub.dartlang.org"
110110
source: hosted
111111
version: "3.0.2"
112+
isolate:
113+
description:
114+
name: isolate
115+
url: "https://pub.dartlang.org"
116+
source: hosted
117+
version: "0.2.2"
112118
logging:
113119
description:
114120
name: logging
@@ -162,7 +168,7 @@ packages:
162168
name: plugin
163169
url: "https://pub.dartlang.org"
164170
source: hosted
165-
version: "0.1.0"
171+
version: "0.2.0"
166172
pool:
167173
description:
168174
name: pool

pubspec.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ homepage: https://github.com/dart-lang/dartdoc
77
environment:
88
sdk: '>=1.14.0 <2.0.0'
99
dependencies:
10-
analyzer: 0.27.3-alpha.7
10+
analyzer: 0.27.4-alpha.18
1111
args: ^0.13.0
1212
cli_util: ^0.0.1
1313
collection: ^1.2.0

testing/test_package_docs/fake/LongFirstLine-class.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -411,7 +411,7 @@ <h2>Operators</h2>
411411
<h2>Methods</h2>
412412
<dl class="callables">
413413
<dt id="fly" class="callable inherited">
414-
<span class="name"><a href="fake/SuperAwesomeClass/fly.html">fly</a></span><span class="signature">(<wbr><span class="parameter" id="fly-param-height"><span class="type-annotation">int</span> <span class="parameter-name">height</span>, </span> <span class="parameter" id="fly-param-superCool"><span class="type-annotation"><a href="ex/Cool-class.html">Cool</a></span> <span class="parameter-name">superCool</span>, {</span> <span class="parameter" id="fly-param-msg"><span class="type-annotation">String</span> <span class="parameter-name">msg</span></span> })
414+
<span class="name"><a href="fake/SuperAwesomeClass/fly.html">fly</a></span><span class="signature">(<wbr><span class="parameter" id="fly-param-height"><span class="type-annotation">int</span> <span class="parameter-name">height</span>, </span> <span class="parameter" id="fly-param-superCool"><span class="type-annotation"><a href="fake/Cool-class.html">Cool</a></span> <span class="parameter-name">superCool</span>, {</span> <span class="parameter" id="fly-param-msg"><span class="type-annotation">String</span> <span class="parameter-name">msg</span></span> })
415415
<span class="returntype parameter">&#8594; void</span>
416416
</span>
417417
</dt>

testing/test_package_docs/fake/SuperAwesomeClass-class.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -251,7 +251,7 @@ <h2>Operators</h2>
251251
<h2>Methods</h2>
252252
<dl class="callables">
253253
<dt id="fly" class="callable">
254-
<span class="name"><a href="fake/SuperAwesomeClass/fly.html">fly</a></span><span class="signature">(<wbr><span class="parameter" id="fly-param-height"><span class="type-annotation">int</span> <span class="parameter-name">height</span>, </span> <span class="parameter" id="fly-param-superCool"><span class="type-annotation"><a href="ex/Cool-class.html">Cool</a></span> <span class="parameter-name">superCool</span>, {</span> <span class="parameter" id="fly-param-msg"><span class="type-annotation">String</span> <span class="parameter-name">msg</span></span> })
254+
<span class="name"><a href="fake/SuperAwesomeClass/fly.html">fly</a></span><span class="signature">(<wbr><span class="parameter" id="fly-param-height"><span class="type-annotation">int</span> <span class="parameter-name">height</span>, </span> <span class="parameter" id="fly-param-superCool"><span class="type-annotation"><a href="fake/Cool-class.html">Cool</a></span> <span class="parameter-name">superCool</span>, {</span> <span class="parameter" id="fly-param-msg"><span class="type-annotation">String</span> <span class="parameter-name">msg</span></span> })
255255
<span class="returntype parameter">&#8594; void</span>
256256
</span>
257257
</dt>

testing/test_package_docs/fake/SuperAwesomeClass/fly.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ <h5><a href="fake/SuperAwesomeClass-class.html">SuperAwesomeClass</a></h5>
101101
<div class="col-xs-12 col-sm-9 col-md-8 main-content">
102102
<section class="multi-line-signature">
103103
<span class="returntype">void</span>
104-
<span class="name ">fly</span>(<wbr><span class="parameter" id="fly-param-height"><span class="type-annotation">int</span> <span class="parameter-name">height</span>, </span> <span class="parameter" id="fly-param-superCool"><span class="type-annotation"><a href="ex/Cool-class.html">Cool</a></span> <span class="parameter-name">superCool</span>, {</span> <span class="parameter" id="fly-param-msg"><span class="type-annotation">String</span> <span class="parameter-name">msg</span></span> })
104+
<span class="name ">fly</span>(<wbr><span class="parameter" id="fly-param-height"><span class="type-annotation">int</span> <span class="parameter-name">height</span>, </span> <span class="parameter" id="fly-param-superCool"><span class="type-annotation"><a href="fake/Cool-class.html">Cool</a></span> <span class="parameter-name">superCool</span>, {</span> <span class="parameter" id="fly-param-msg"><span class="type-annotation">String</span> <span class="parameter-name">msg</span></span> })
105105
</section>
106106
<section class="desc markdown">
107107
<p>In the super class.</p>

testing/test_package_docs/fake/fake-library.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -460,7 +460,7 @@ <h2>Functions</h2>
460460
<p>An async function. It should look like I return a <code>Future</code>.</p>
461461
</dd>
462462
<dt id="topLevelFunction" class="callable">
463-
<span class="name deprecated"><a class="deprecated" href="fake/topLevelFunction.html">topLevelFunction</a></span><span class="signature">(<wbr><span class="parameter" id="topLevelFunction-param-param1"><span class="type-annotation">int</span> <span class="parameter-name">param1</span>, </span> <span class="parameter" id="topLevelFunction-param-param2"><span class="type-annotation">bool</span> <span class="parameter-name">param2</span>, </span> <span class="parameter" id="topLevelFunction-param-coolBeans"><span class="type-annotation"><a href="ex/Cool-class.html">Cool</a></span> <span class="parameter-name">coolBeans</span>, [</span> <span class="parameter" id="topLevelFunction-param-optionalPositional"><span class="type-annotation">double</span> <span class="parameter-name">optionalPositional</span> = <span class="default-value">0.0</span></span> ])
463+
<span class="name deprecated"><a class="deprecated" href="fake/topLevelFunction.html">topLevelFunction</a></span><span class="signature">(<wbr><span class="parameter" id="topLevelFunction-param-param1"><span class="type-annotation">int</span> <span class="parameter-name">param1</span>, </span> <span class="parameter" id="topLevelFunction-param-param2"><span class="type-annotation">bool</span> <span class="parameter-name">param2</span>, </span> <span class="parameter" id="topLevelFunction-param-coolBeans"><span class="type-annotation"><a href="fake/Cool-class.html">Cool</a></span> <span class="parameter-name">coolBeans</span>, [</span> <span class="parameter" id="topLevelFunction-param-optionalPositional"><span class="type-annotation">double</span> <span class="parameter-name">optionalPositional</span> = <span class="default-value">0.0</span></span> ])
464464
<span class="returntype parameter">&#8594; String</span>
465465
</span>
466466
</dt>

testing/test_package_docs/fake/topLevelFunction.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,7 @@ <h5><a href="fake/fake-library.html">fake</a></h5>
150150
</ol>
151151
</div>
152152
<span class="returntype">String</span>
153-
<span class="name deprecated">topLevelFunction</span>(<wbr><span class="parameter" id="topLevelFunction-param-param1"><span class="type-annotation">int</span> <span class="parameter-name">param1</span>, </span> <span class="parameter" id="topLevelFunction-param-param2"><span class="type-annotation">bool</span> <span class="parameter-name">param2</span>, </span> <span class="parameter" id="topLevelFunction-param-coolBeans"><span class="type-annotation"><a href="ex/Cool-class.html">Cool</a></span> <span class="parameter-name">coolBeans</span>, [</span> <span class="parameter" id="topLevelFunction-param-optionalPositional"><span class="type-annotation">double</span> <span class="parameter-name">optionalPositional</span> = <span class="default-value">0.0</span></span> ])
153+
<span class="name deprecated">topLevelFunction</span>(<wbr><span class="parameter" id="topLevelFunction-param-param1"><span class="type-annotation">int</span> <span class="parameter-name">param1</span>, </span> <span class="parameter" id="topLevelFunction-param-param2"><span class="type-annotation">bool</span> <span class="parameter-name">param2</span>, </span> <span class="parameter" id="topLevelFunction-param-coolBeans"><span class="type-annotation"><a href="fake/Cool-class.html">Cool</a></span> <span class="parameter-name">coolBeans</span>, [</span> <span class="parameter" id="topLevelFunction-param-optionalPositional"><span class="type-annotation">double</span> <span class="parameter-name">optionalPositional</span> = <span class="default-value">0.0</span></span> ])
154154
</section>
155155
<section class="desc markdown">
156156
<p>Top-level function 3 params and 1 optional positional param.</p>

0 commit comments

Comments
 (0)