Skip to content

Commit 4f947b3

Browse files
committed
Basic support for typedefs with generic functions
1 parent 2af8470 commit 4f947b3

File tree

63 files changed

+362
-82
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

63 files changed

+362
-82
lines changed

lib/src/html/html_generator_instance.dart

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,8 @@ class HtmlGeneratorInstance implements HtmlOptions {
143143
}
144144

145145
for (var typeDef in lib.typedefs) {
146+
if (typeDef.name.contains("NewGenericTypedef"))
147+
print('hello');
146148
generateTypeDef(package, lib, typeDef);
147149
}
148150
}

lib/src/model.dart

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1850,9 +1850,11 @@ abstract class ModelElement implements Comparable, Nameable, Documentable {
18501850
typeName = mt.linkedName;
18511851
}
18521852
if (typeName.isNotEmpty) {
1853-
buf.write('<span class="type-annotation">$typeName</span> ');
1853+
buf.write('<span class="type-annotation">$typeName</span>');
18541854
}
1855-
if (showNames) {
1855+
if (typeName.isNotEmpty && showNames && param.name.isNotEmpty)
1856+
buf.write(' ');
1857+
if (showNames && param.name.isNotEmpty) {
18561858
buf.write('<span class="parameter-name">${param.name}</span>');
18571859
}
18581860
}

testing/test_package/lib/fake.dart

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -134,6 +134,9 @@ typedef String FakeProcesses(String input);
134134
/// A typedef with a type parameter.
135135
typedef T GenericTypedef<T>(T input);
136136

137+
/// A typedef with the new style generic function syntax.
138+
typedef NewGenericTypedef<T> = List<T> Function<T>(int);
139+
137140
/// Lots and lots of parameters.
138141
typedef int LotsAndLotsOfParameters(so, many, parameters, it, should, wrap,
139142
when, converted, to, html, documentation);

testing/test_package_docs/fake/Annotation-class.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,7 @@ <h5><a href="fake/fake-library.html">fake</a></h5>
9595
<li><a class="deprecated" href="fake/FakeProcesses.html">FakeProcesses</a></li>
9696
<li><a href="fake/GenericTypedef.html">GenericTypedef</a></li>
9797
<li><a href="fake/LotsAndLotsOfParameters.html">LotsAndLotsOfParameters</a></li>
98+
<li><a href="fake/NewGenericTypedef.html">NewGenericTypedef</a></li>
9899
<li><a href="fake/VoidCallback.html">VoidCallback</a></li>
99100

100101
<li class="section-title"><a href="fake/fake-library.html#properties">Properties</a></li>

testing/test_package_docs/fake/AnotherInterface-class.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,7 @@ <h5><a href="fake/fake-library.html">fake</a></h5>
9595
<li><a class="deprecated" href="fake/FakeProcesses.html">FakeProcesses</a></li>
9696
<li><a href="fake/GenericTypedef.html">GenericTypedef</a></li>
9797
<li><a href="fake/LotsAndLotsOfParameters.html">LotsAndLotsOfParameters</a></li>
98+
<li><a href="fake/NewGenericTypedef.html">NewGenericTypedef</a></li>
9899
<li><a href="fake/VoidCallback.html">VoidCallback</a></li>
99100

100101
<li class="section-title"><a href="fake/fake-library.html#properties">Properties</a></li>

testing/test_package_docs/fake/BaseForDocComments-class.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,7 @@ <h5><a href="fake/fake-library.html">fake</a></h5>
9595
<li><a class="deprecated" href="fake/FakeProcesses.html">FakeProcesses</a></li>
9696
<li><a href="fake/GenericTypedef.html">GenericTypedef</a></li>
9797
<li><a href="fake/LotsAndLotsOfParameters.html">LotsAndLotsOfParameters</a></li>
98+
<li><a href="fake/NewGenericTypedef.html">NewGenericTypedef</a></li>
9899
<li><a href="fake/VoidCallback.html">VoidCallback</a></li>
99100

100101
<li class="section-title"><a href="fake/fake-library.html#properties">Properties</a></li>

testing/test_package_docs/fake/CUSTOM_CLASS-constant.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,7 @@ <h5><a href="fake/fake-library.html">fake</a></h5>
8888
<li><a class="deprecated" href="fake/FakeProcesses.html">FakeProcesses</a></li>
8989
<li><a href="fake/GenericTypedef.html">GenericTypedef</a></li>
9090
<li><a href="fake/LotsAndLotsOfParameters.html">LotsAndLotsOfParameters</a></li>
91+
<li><a href="fake/NewGenericTypedef.html">NewGenericTypedef</a></li>
9192
<li><a href="fake/VoidCallback.html">VoidCallback</a></li>
9293

9394
<li class="section-title"><a href="fake/fake-library.html#properties">Properties</a></li>

testing/test_package_docs/fake/Callback2.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,7 @@ <h5><a href="fake/fake-library.html">fake</a></h5>
8888
<li><a class="deprecated" href="fake/FakeProcesses.html">FakeProcesses</a></li>
8989
<li><a href="fake/GenericTypedef.html">GenericTypedef</a></li>
9090
<li><a href="fake/LotsAndLotsOfParameters.html">LotsAndLotsOfParameters</a></li>
91+
<li><a href="fake/NewGenericTypedef.html">NewGenericTypedef</a></li>
9192
<li><a href="fake/VoidCallback.html">VoidCallback</a></li>
9293

9394
<li class="section-title"><a href="fake/fake-library.html#properties">Properties</a></li>

testing/test_package_docs/fake/Color-class.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,7 @@ <h5><a href="fake/fake-library.html">fake</a></h5>
9393
<li><a class="deprecated" href="fake/FakeProcesses.html">FakeProcesses</a></li>
9494
<li><a href="fake/GenericTypedef.html">GenericTypedef</a></li>
9595
<li><a href="fake/LotsAndLotsOfParameters.html">LotsAndLotsOfParameters</a></li>
96+
<li><a href="fake/NewGenericTypedef.html">NewGenericTypedef</a></li>
9697
<li><a href="fake/VoidCallback.html">VoidCallback</a></li>
9798

9899
<li class="section-title"><a href="fake/fake-library.html#properties">Properties</a></li>

testing/test_package_docs/fake/ConstantClass-class.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,7 @@ <h5><a href="fake/fake-library.html">fake</a></h5>
9595
<li><a class="deprecated" href="fake/FakeProcesses.html">FakeProcesses</a></li>
9696
<li><a href="fake/GenericTypedef.html">GenericTypedef</a></li>
9797
<li><a href="fake/LotsAndLotsOfParameters.html">LotsAndLotsOfParameters</a></li>
98+
<li><a href="fake/NewGenericTypedef.html">NewGenericTypedef</a></li>
9899
<li><a href="fake/VoidCallback.html">VoidCallback</a></li>
99100

100101
<li class="section-title"><a href="fake/fake-library.html#properties">Properties</a></li>

0 commit comments

Comments
 (0)