From 446aafdb0925e93b6d027aa9f1cec0a1ad7d3bf9 Mon Sep 17 00:00:00 2001 From: Jonathan Peppers Date: Sat, 15 Aug 2026 09:40:32 -0500 Subject: [PATCH 1/2] Document JNI reference metadata Refs #193 Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- docs/xml/Java.Interop/JniObjectReferenceType.xml | 15 ++++++++++----- .../Java.Interop/JniReleaseArrayElementsMode.xml | 13 +++++++++---- docs/xml/Java.Interop/JniVersion.xml | 13 +++++++++---- 3 files changed, 28 insertions(+), 13 deletions(-) diff --git a/docs/xml/Java.Interop/JniObjectReferenceType.xml b/docs/xml/Java.Interop/JniObjectReferenceType.xml index d99393fa5..0bb23ab75 100644 --- a/docs/xml/Java.Interop/JniObjectReferenceType.xml +++ b/docs/xml/Java.Interop/JniObjectReferenceType.xml @@ -13,8 +13,13 @@ System.Enum - To be added. + Identifies the kind of a JNI object reference. + + + JNI specification for GetObjectRefType. + + Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. @@ -35,7 +40,7 @@ 2 - To be added. + A global JNI reference. Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. @@ -57,7 +62,7 @@ 0 - To be added. + An invalid JNI reference type. Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. @@ -79,7 +84,7 @@ 1 - To be added. + A local JNI reference. Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. @@ -101,7 +106,7 @@ 3 - To be added. + A weak global JNI reference. Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. diff --git a/docs/xml/Java.Interop/JniReleaseArrayElementsMode.xml b/docs/xml/Java.Interop/JniReleaseArrayElementsMode.xml index f85b366c9..a2fdf6351 100644 --- a/docs/xml/Java.Interop/JniReleaseArrayElementsMode.xml +++ b/docs/xml/Java.Interop/JniReleaseArrayElementsMode.xml @@ -13,8 +13,13 @@ System.Enum - To be added. + Specifies how a JNI array-elements buffer is released. + + + JNI specification for releasing primitive array elements. + + Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. @@ -35,7 +40,7 @@ 2 - To be added. + Frees the buffer without copying its changes to the Java array. Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. @@ -57,7 +62,7 @@ 1 - To be added. + Copies changes to the Java array without freeing the buffer. Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. @@ -79,7 +84,7 @@ 0 - To be added. + Copies changes to the Java array and frees the buffer. Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. diff --git a/docs/xml/Java.Interop/JniVersion.xml b/docs/xml/Java.Interop/JniVersion.xml index e7e4f1cf0..8b8e6e90c 100644 --- a/docs/xml/Java.Interop/JniVersion.xml +++ b/docs/xml/Java.Interop/JniVersion.xml @@ -13,8 +13,13 @@ System.Enum - To be added. + Identifies a version of the Java Native Interface. + + + JNI specification for version information. + + Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. @@ -35,7 +40,7 @@ 65538 - To be added. + JNI version 1.2. Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. @@ -57,7 +62,7 @@ 65540 - To be added. + JNI version 1.4. Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. @@ -79,7 +84,7 @@ 65542 - To be added. + JNI version 1.6. Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. From 92ff0925b504caaa8f8ba0b05fe1ad6372d073f4 Mon Sep 17 00:00:00 2001 From: Jonathan Peppers Date: Sun, 16 Aug 2026 08:37:07 -0500 Subject: [PATCH 2/2] Correct JNI release mode documentation Refs #193 Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: f851edb8-9ddb-4c56-b72c-2067a9350c74 --- docs/xml/Java.Interop/JniObjectReferenceType.xml | 2 +- .../Java.Interop/JniReleaseArrayElementsMode.xml | 14 +++++++++----- docs/xml/Java.Interop/JniVersion.xml | 2 +- 3 files changed, 11 insertions(+), 7 deletions(-) diff --git a/docs/xml/Java.Interop/JniObjectReferenceType.xml b/docs/xml/Java.Interop/JniObjectReferenceType.xml index 0bb23ab75..324f11b1c 100644 --- a/docs/xml/Java.Interop/JniObjectReferenceType.xml +++ b/docs/xml/Java.Interop/JniObjectReferenceType.xml @@ -17,7 +17,7 @@ - JNI specification for GetObjectRefType. + JNI specification for GetObjectRefType. Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. diff --git a/docs/xml/Java.Interop/JniReleaseArrayElementsMode.xml b/docs/xml/Java.Interop/JniReleaseArrayElementsMode.xml index a2fdf6351..9a2593ed1 100644 --- a/docs/xml/Java.Interop/JniReleaseArrayElementsMode.xml +++ b/docs/xml/Java.Interop/JniReleaseArrayElementsMode.xml @@ -13,13 +13,17 @@ System.Enum - Specifies how a JNI array-elements buffer is released. + Specifies how a copied JNI primitive-array elements buffer is released. - JNI specification for releasing primitive array elements. + JNI specification for primitive array release modes. + + The release mode has no effect when the elements pointer is not a copy + of the Java array. + Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. @@ -40,7 +44,7 @@ 2 - Frees the buffer without copying its changes to the Java array. + For a copied buffer, frees the buffer without copying its changes to the Java array; it cannot discard changes made through a direct or pinned pointer. Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. @@ -62,7 +66,7 @@ 1 - Copies changes to the Java array without freeing the buffer. + For a copied buffer, copies changes to the Java array without freeing the buffer; a final release with Default or Abort is required to free it. Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. @@ -84,7 +88,7 @@ 0 - Copies changes to the Java array and frees the buffer. + For a copied buffer, copies changes to the Java array and frees the buffer. Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License. diff --git a/docs/xml/Java.Interop/JniVersion.xml b/docs/xml/Java.Interop/JniVersion.xml index 8b8e6e90c..f3ae260ce 100644 --- a/docs/xml/Java.Interop/JniVersion.xml +++ b/docs/xml/Java.Interop/JniVersion.xml @@ -17,7 +17,7 @@ - JNI specification for version information. + JNI specification for version information. Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License.