Skip to content

Commit

Permalink
Bump to xamarin/Java.Interop/master@fdc200cc
Browse files Browse the repository at this point in the history
Fixes: dotnet/java-interop#767

Changes: dotnet/java-interop@7574f16...fdc200c

  * dotnet/java-interop@fdc200cc: [Xamarin.Android.Tools.Bytecode] Relax _ApiXml check (#772)
  * dotnet/java-interop@f1b93653: [generator] Change generated code to not emit CA1305 warning. (#771)
  * dotnet/java-interop@2244407d: [generator] Ensure DIM from assembly refs are correctly marked (#770)
  * dotnet/java-interop@da73d6a5: [Java.Interop] Prevent premature collection w/ JniInstance* (#768)

Commit a7413a2 added support for invoking `java-source-utils.jar`
on `@(JavaSourceJar)` to extract Javadoc comments and translate them
into C# XML Documentation Comments.

What this can *also* do is provide correct parameter names.
As of commit a7413a2, the `BindingBuildTest.JavaSourceJar()`
integration test would emit the warning:

	obj/Debug/generated/src/Com.Xamarin.Android.Test.Msbuildtest.JavaSourceJarTest.cs(75,20):
	warning CS1572: XML comment has a param tag for 'name', but there is no parameter by that name

Commit dotnet/java-interop@fdc200cc allows `java-source-utils.jar`
output to be used with `class-parse`, allowing
`@(_JavaSourceJavadocXml)` files -- the output of
`java-source-utils.jar` -- to be included in
`@(_AndroidDocumentationPath)`.

This allows `@(JavaSourceJar)` files to provide parameter names
within bindings, removing the CS1572 warning, and making for
better overall bindings.
  • Loading branch information
jonpryor committed Jan 6, 2021
1 parent a7413a2 commit 01fcfed
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 10 deletions.
2 changes: 1 addition & 1 deletion external/Java.Interop
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,7 @@ This file is only used by binding projects.
Outputs="$(ApiOutputFile)">

<ItemGroup>
<!-- TODO: add when `ClassPath` supports `<api api-source="java-source-utils">`
<_AndroidDocumentationPath Include="@(_JavaSourceJavadocXml)" />
-->
<_AndroidDocumentationPath Include="@(JavaDocIndex->'%(RootDir)\%(Directory)')" />
<_AndroidDocumentationPath Include="$(JavaDocPaths)" />
<_AndroidDocumentationPath Include="$(Java7DocPaths)" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -66,14 +66,14 @@ public void Arrays ()
{
using (var dh = new Com.Xamarin.Android.DataHandler ()) {
EventHandler<Com.Xamarin.Android.DataEventArgs> h = (o, e) => {
Assert.AreEqual ("fromNode", e.P0);
Assert.AreEqual ("fromChannel", e.P1);
Assert.AreEqual ("payloadType", e.P2);
for (int i = 0; i < e.P3.Length; ++i) {
for (int j = 0; j < e.P3 [i].Length; ++j) {
Assert.AreEqual ("fromNode", e.FromNode);
Assert.AreEqual ("fromChannel", e.FromChannel);
Assert.AreEqual ("payloadType", e.PayloadType);
for (int i = 0; i < e.Payload.Length; ++i) {
for (int j = 0; j < e.Payload [i].Length; ++j) {
byte expected = (byte) (((i+1)*10) + (j+1));
Assert.AreEqual ((byte)(expected + 'J'), e.P3 [i][j]);
e.P3 [i][j] = expected;
Assert.AreEqual ((byte)(expected + 'J'), e.Payload [i][j]);
e.Payload [i][j] = expected;
}
}
};
Expand Down

0 comments on commit 01fcfed

Please sign in to comment.