Skip to content

Commit 278713e

Browse files
authored
Add annotations to parameter documentation (#1450)
1 parent 9403f98 commit 278713e

File tree

5 files changed

+11
-7
lines changed

5 files changed

+11
-7
lines changed

lib/src/model.dart

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1880,10 +1880,7 @@ abstract class ModelElement implements Comparable, Nameable, Documentable {
18801880
node = node.parent;
18811881
}
18821882
metadata = node.metadata;
1883-
} else if (element.computeNode() is! FormalParameter) {
1884-
// TODO(jcollins-g): This is special cased to suppress annotations for
1885-
// parameters in constructor documentation. Do we
1886-
// want to do this?
1883+
} else {
18871884
metadata = element.metadata;
18881885
}
18891886
return annotationsFromMetadata(metadata);

test/model_test.dart

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1627,6 +1627,13 @@ String topLevelFunction(int param1, bool param2, Cool coolBeans,
16271627
expect(params, contains(', </span>'));
16281628
});
16291629

1630+
test('param with annotations', () {
1631+
ModelFunction method =
1632+
fakeLibrary.functions.firstWhere((f) => f.name == 'paintImage1');
1633+
String params = method.linkedParams();
1634+
expect(params, contains('@required'));
1635+
});
1636+
16301637
test('param exported in library', () {
16311638
var param = paramFromExportLib.parameters[0];
16321639
expect(param.name, equals('helper'));

testing/test_package_docs/fake/onlyPositionalWithNoDefaultNoType.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ <h5>library fake</h5>
125125
</ol>
126126
</div>
127127
<span class="returntype">void</span>
128-
<span class="name ">onlyPositionalWithNoDefaultNoType</span>(<wbr>[<span class="parameter" id="onlyPositionalWithNoDefaultNoType-param-anything"><span class="parameter-name">anything</span></span> ])
128+
<span class="name ">onlyPositionalWithNoDefaultNoType</span>(<wbr>[<span class="parameter" id="onlyPositionalWithNoDefaultNoType-param-anything"><span>@greatestAnnotation</span> <span class="parameter-name">anything</span></span> ])
129129
</section>
130130
<section class="desc markdown">
131131
<p>A single optional positional param, no type annotation, no default value.</p>

testing/test_package_docs/fake/paintImage1.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ <h5>library fake</h5>
120120

121121
<section class="multi-line-signature">
122122
<span class="returntype">void</span>
123-
<span class="name ">paintImage1</span>(<wbr>{<span class="parameter" id="paintImage1-param-canvas"><span class="type-annotation">String</span> <span class="parameter-name">canvas</span>, </span> <span class="parameter" id="paintImage1-param-rect"><span class="type-annotation">int</span> <span class="parameter-name">rect</span>, </span> <span class="parameter" id="paintImage1-param-image"><span class="type-annotation"><a href="fake/ExtraSpecialList-class.html">ExtraSpecialList</a></span> <span class="parameter-name">image</span>, </span> <span class="parameter" id="paintImage1-param-colorFilter"><span class="type-annotation"><a href="fake/BaseForDocComments-class.html">BaseForDocComments</a></span> <span class="parameter-name">colorFilter</span>, </span> <span class="parameter" id="paintImage1-param-repeat"><span class="type-annotation">String</span> <span class="parameter-name">repeat</span>: <span class="default-value">LongFirstLine.THING</span></span> })
123+
<span class="name ">paintImage1</span>(<wbr>{<span class="parameter" id="paintImage1-param-canvas"><span>@required</span> <span class="type-annotation">String</span> <span class="parameter-name">canvas</span>, </span> <span class="parameter" id="paintImage1-param-rect"><span>@required</span> <span class="type-annotation">int</span> <span class="parameter-name">rect</span>, </span> <span class="parameter" id="paintImage1-param-image"><span>@required</span> <span class="type-annotation"><a href="fake/ExtraSpecialList-class.html">ExtraSpecialList</a></span> <span class="parameter-name">image</span>, </span> <span class="parameter" id="paintImage1-param-colorFilter"><span class="type-annotation"><a href="fake/BaseForDocComments-class.html">BaseForDocComments</a></span> <span class="parameter-name">colorFilter</span>, </span> <span class="parameter" id="paintImage1-param-repeat"><span class="type-annotation">String</span> <span class="parameter-name">repeat</span>: <span class="default-value">LongFirstLine.THING</span></span> })
124124
</section>
125125
<section class="desc markdown">
126126
<p>Paints an image into the given rectangle in the canvas.</p>

testing/test_package_docs/fake/paintImage2.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ <h5>library fake</h5>
120120

121121
<section class="multi-line-signature">
122122
<span class="returntype">void</span>
123-
<span class="name ">paintImage2</span>(<wbr><span class="parameter" id="paintImage2-param-fooParam"><span class="type-annotation">String</span> <span class="parameter-name">fooParam</span>, [</span> <span class="parameter" id="paintImage2-param-canvas"><span class="type-annotation">String</span> <span class="parameter-name">canvas</span>, </span> <span class="parameter" id="paintImage2-param-rect"><span class="type-annotation">int</span> <span class="parameter-name">rect</span>, </span> <span class="parameter" id="paintImage2-param-image"><span class="type-annotation"><a href="fake/ExtraSpecialList-class.html">ExtraSpecialList</a></span> <span class="parameter-name">image</span>, </span> <span class="parameter" id="paintImage2-param-colorFilter"><span class="type-annotation"><a href="fake/BaseForDocComments-class.html">BaseForDocComments</a></span> <span class="parameter-name">colorFilter</span>, </span> <span class="parameter" id="paintImage2-param-repeat"><span class="type-annotation">String</span> <span class="parameter-name">repeat</span> = <span class="default-value">LongFirstLine.THING</span></span> ])
123+
<span class="name ">paintImage2</span>(<wbr><span class="parameter" id="paintImage2-param-fooParam"><span class="type-annotation">String</span> <span class="parameter-name">fooParam</span>, [</span> <span class="parameter" id="paintImage2-param-canvas"><span>@required</span> <span class="type-annotation">String</span> <span class="parameter-name">canvas</span>, </span> <span class="parameter" id="paintImage2-param-rect"><span>@required</span> <span class="type-annotation">int</span> <span class="parameter-name">rect</span>, </span> <span class="parameter" id="paintImage2-param-image"><span>@required</span> <span class="type-annotation"><a href="fake/ExtraSpecialList-class.html">ExtraSpecialList</a></span> <span class="parameter-name">image</span>, </span> <span class="parameter" id="paintImage2-param-colorFilter"><span class="type-annotation"><a href="fake/BaseForDocComments-class.html">BaseForDocComments</a></span> <span class="parameter-name">colorFilter</span>, </span> <span class="parameter" id="paintImage2-param-repeat"><span class="type-annotation">String</span> <span class="parameter-name">repeat</span> = <span class="default-value">LongFirstLine.THING</span></span> ])
124124
</section>
125125
<section class="desc markdown">
126126
<p>Paints an image into the given rectangle in the canvas.</p>

0 commit comments

Comments
 (0)