Skip to content
This repository was archived by the owner on Jul 6, 2026. It is now read-only.

Commit 425f79d

Browse files
authored
[Java.Interop] Fix C# warnings (#652)
Fixes 43 Nullable Reference Type warnings Fixes CS0168 warning: The variable 'e' is declared but never used. Fixes 6 CA1307 warnings introduced by targeting `netcoreapp3.1`: The behavior of 'string.IndexOf(char)' could vary based on the current user's locale settings.
1 parent 2e0f55d commit 425f79d

22 files changed

Lines changed: 92 additions & 93 deletions

‎src/Java.Interop/Java.Interop/JavaArray.cs‎

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -258,31 +258,31 @@ bool ICollection<T>.Remove (T item)
258258
thrownewNotSupportedException();
259259
}
260260

261-
boolIList.Contains(objectvalue)
261+
boolIList.Contains(object?value)
262262
{
263263
if(valueisT)
264264
returnContains((T)value);
265265
returnfalse;
266266
}
267267

268-
intIList.IndexOf(objectvalue)
268+
intIList.IndexOf(object?value)
269269
{
270270
if(valueisT)
271271
returnIndexOf((T)value);
272272
return-1;
273273
}
274274

275-
intIList.Add(objectvalue)
275+
intIList.Add(object?value)
276276
{
277277
thrownewNotSupportedException();
278278
}
279279

280-
voidIList.Insert(intindex,objectvalue)
280+
voidIList.Insert(intindex,object?value)
281281
{
282282
thrownewNotSupportedException();
283283
}
284284

285-
voidIList.Remove(objectvalue)
285+
voidIList.Remove(object?value)
286286
{
287287
thrownewNotSupportedException();
288288
}

‎src/Java.Interop/Java.Interop/JavaException.cs‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,7 @@ protected virtual void Dispose (bool disposing)
162162
}
163163
}
164164

165-
publicoverrideboolEquals(objectobj)
165+
publicoverrideboolEquals(object?obj)
166166
{
167167
JniPeerMembers.AssertSelf(this);
168168

‎src/Java.Interop/Java.Interop/JavaObject.cs‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ protected virtual void Dispose (bool disposing)
110110
{
111111
}
112112

113-
publicoverrideboolEquals(objectobj)
113+
publicoverrideboolEquals(object?obj)
114114
{
115115
JniPeerMembers.AssertSelf(this);
116116

‎src/Java.Interop/Java.Interop/JavaPrimitiveArrays.cs‎

Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77

88
usingJava.Interop.Expressions;
99
usingSystem.Linq.Expressions;
10+
usingSystem.Diagnostics.CodeAnalysis;
1011

1112
namespaceJava.Interop{
1213

@@ -246,7 +247,7 @@ public override IList<Boolean> CreateGenericValue (ref JniObjectReference refere
246247
(refJniObjectReferenceh,JniObjectReferenceOptionso)=>newJavaBooleanArray(refh,o));
247248
}
248249

249-
publicoverrideJniValueMarshalerStateCreateGenericObjectReferenceArgumentState(IList<Boolean>value,ParameterAttributessynchronize)
250+
publicoverrideJniValueMarshalerStateCreateGenericObjectReferenceArgumentState([MaybeNull]IList<Boolean>value,ParameterAttributessynchronize)
250251
{
251252
returnJavaArray<Boolean>.CreateArgumentState(value,synchronize,(list,copy)=>{
252253
vara=copy
@@ -257,7 +258,7 @@ public override JniValueMarshalerState CreateGenericObjectReferenceArgumentState
257258
});
258259
}
259260

260-
publicoverridevoidDestroyGenericArgumentState(IList<Boolean>value,refJniValueMarshalerStatestate,ParameterAttributessynchronize)
261+
publicoverridevoidDestroyGenericArgumentState([AllowNull]IList<Boolean>value,refJniValueMarshalerStatestate,ParameterAttributessynchronize)
261262
{
262263
JavaArray<Boolean>.DestroyArgumentState<JavaBooleanArray>(value,refstate,synchronize);
263264
}
@@ -422,7 +423,7 @@ public override IList<SByte> CreateGenericValue (ref JniObjectReference referenc
422423
(refJniObjectReferenceh,JniObjectReferenceOptionso)=>newJavaSByteArray(refh,o));
423424
}
424425

425-
publicoverrideJniValueMarshalerStateCreateGenericObjectReferenceArgumentState(IList<SByte>value,ParameterAttributessynchronize)
426+
publicoverrideJniValueMarshalerStateCreateGenericObjectReferenceArgumentState([MaybeNull]IList<SByte>value,ParameterAttributessynchronize)
426427
{
427428
returnJavaArray<SByte>.CreateArgumentState(value,synchronize,(list,copy)=>{
428429
vara=copy
@@ -433,7 +434,7 @@ public override JniValueMarshalerState CreateGenericObjectReferenceArgumentState
433434
});
434435
}
435436

436-
publicoverridevoidDestroyGenericArgumentState(IList<SByte>value,refJniValueMarshalerStatestate,ParameterAttributessynchronize)
437+
publicoverridevoidDestroyGenericArgumentState([AllowNull]IList<SByte>value,refJniValueMarshalerStatestate,ParameterAttributessynchronize)
437438
{
438439
JavaArray<SByte>.DestroyArgumentState<JavaSByteArray>(value,refstate,synchronize);
439440
}
@@ -598,7 +599,7 @@ public override IList<Char> CreateGenericValue (ref JniObjectReference reference
598599
(refJniObjectReferenceh,JniObjectReferenceOptionso)=>newJavaCharArray(refh,o));
599600
}
600601

601-
publicoverrideJniValueMarshalerStateCreateGenericObjectReferenceArgumentState(IList<Char>value,ParameterAttributessynchronize)
602+
publicoverrideJniValueMarshalerStateCreateGenericObjectReferenceArgumentState([MaybeNull]IList<Char>value,ParameterAttributessynchronize)
602603
{
603604
returnJavaArray<Char>.CreateArgumentState(value,synchronize,(list,copy)=>{
604605
vara=copy
@@ -609,7 +610,7 @@ public override JniValueMarshalerState CreateGenericObjectReferenceArgumentState
609610
});
610611
}
611612

612-
publicoverridevoidDestroyGenericArgumentState(IList<Char>value,refJniValueMarshalerStatestate,ParameterAttributessynchronize)
613+
publicoverridevoidDestroyGenericArgumentState([AllowNull]IList<Char>value,refJniValueMarshalerStatestate,ParameterAttributessynchronize)
613614
{
614615
JavaArray<Char>.DestroyArgumentState<JavaCharArray>(value,refstate,synchronize);
615616
}
@@ -774,7 +775,7 @@ public override IList<Int16> CreateGenericValue (ref JniObjectReference referenc
774775
(refJniObjectReferenceh,JniObjectReferenceOptionso)=>newJavaInt16Array(refh,o));
775776
}
776777

777-
publicoverrideJniValueMarshalerStateCreateGenericObjectReferenceArgumentState(IList<Int16>value,ParameterAttributessynchronize)
778+
publicoverrideJniValueMarshalerStateCreateGenericObjectReferenceArgumentState([MaybeNull]IList<Int16>value,ParameterAttributessynchronize)
778779
{
779780
returnJavaArray<Int16>.CreateArgumentState(value,synchronize,(list,copy)=>{
780781
vara=copy
@@ -785,7 +786,7 @@ public override JniValueMarshalerState CreateGenericObjectReferenceArgumentState
785786
});
786787
}
787788

788-
publicoverridevoidDestroyGenericArgumentState(IList<Int16>value,refJniValueMarshalerStatestate,ParameterAttributessynchronize)
789+
publicoverridevoidDestroyGenericArgumentState([AllowNull]IList<Int16>value,refJniValueMarshalerStatestate,ParameterAttributessynchronize)
789790
{
790791
JavaArray<Int16>.DestroyArgumentState<JavaInt16Array>(value,refstate,synchronize);
791792
}
@@ -950,7 +951,7 @@ public override IList<Int32> CreateGenericValue (ref JniObjectReference referenc
950951
(refJniObjectReferenceh,JniObjectReferenceOptionso)=>newJavaInt32Array(refh,o));
951952
}
952953

953-
publicoverrideJniValueMarshalerStateCreateGenericObjectReferenceArgumentState(IList<Int32>value,ParameterAttributessynchronize)
954+
publicoverrideJniValueMarshalerStateCreateGenericObjectReferenceArgumentState([MaybeNull]IList<Int32>value,ParameterAttributessynchronize)
954955
{
955956
returnJavaArray<Int32>.CreateArgumentState(value,synchronize,(list,copy)=>{
956957
vara=copy
@@ -961,7 +962,7 @@ public override JniValueMarshalerState CreateGenericObjectReferenceArgumentState
961962
});
962963
}
963964

964-
publicoverridevoidDestroyGenericArgumentState(IList<Int32>value,refJniValueMarshalerStatestate,ParameterAttributessynchronize)
965+
publicoverridevoidDestroyGenericArgumentState([AllowNull]IList<Int32>value,refJniValueMarshalerStatestate,ParameterAttributessynchronize)
965966
{
966967
JavaArray<Int32>.DestroyArgumentState<JavaInt32Array>(value,refstate,synchronize);
967968
}
@@ -1126,7 +1127,7 @@ public override IList<Int64> CreateGenericValue (ref JniObjectReference referenc
11261127
(refJniObjectReferenceh,JniObjectReferenceOptionso)=>newJavaInt64Array(refh,o));
11271128
}
11281129

1129-
publicoverrideJniValueMarshalerStateCreateGenericObjectReferenceArgumentState(IList<Int64>value,ParameterAttributessynchronize)
1130+
publicoverrideJniValueMarshalerStateCreateGenericObjectReferenceArgumentState([MaybeNull]IList<Int64>value,ParameterAttributessynchronize)
11301131
{
11311132
returnJavaArray<Int64>.CreateArgumentState(value,synchronize,(list,copy)=>{
11321133
vara=copy
@@ -1137,7 +1138,7 @@ public override JniValueMarshalerState CreateGenericObjectReferenceArgumentState
11371138
});
11381139
}
11391140

1140-
publicoverridevoidDestroyGenericArgumentState(IList<Int64>value,refJniValueMarshalerStatestate,ParameterAttributessynchronize)
1141+
publicoverridevoidDestroyGenericArgumentState([AllowNull]IList<Int64>value,refJniValueMarshalerStatestate,ParameterAttributessynchronize)
11411142
{
11421143
JavaArray<Int64>.DestroyArgumentState<JavaInt64Array>(value,refstate,synchronize);
11431144
}
@@ -1302,7 +1303,7 @@ public override IList<Single> CreateGenericValue (ref JniObjectReference referen
13021303
(refJniObjectReferenceh,JniObjectReferenceOptionso)=>newJavaSingleArray(refh,o));
13031304
}
13041305

1305-
publicoverrideJniValueMarshalerStateCreateGenericObjectReferenceArgumentState(IList<Single>value,ParameterAttributessynchronize)
1306+
publicoverrideJniValueMarshalerStateCreateGenericObjectReferenceArgumentState([MaybeNull]IList<Single>value,ParameterAttributessynchronize)
13061307
{
13071308
returnJavaArray<Single>.CreateArgumentState(value,synchronize,(list,copy)=>{
13081309
vara=copy
@@ -1313,7 +1314,7 @@ public override JniValueMarshalerState CreateGenericObjectReferenceArgumentState
13131314
});
13141315
}
13151316

1316-
publicoverridevoidDestroyGenericArgumentState(IList<Single>value,refJniValueMarshalerStatestate,ParameterAttributessynchronize)
1317+
publicoverridevoidDestroyGenericArgumentState([AllowNull]IList<Single>value,refJniValueMarshalerStatestate,ParameterAttributessynchronize)
13171318
{
13181319
JavaArray<Single>.DestroyArgumentState<JavaSingleArray>(value,refstate,synchronize);
13191320
}
@@ -1478,7 +1479,7 @@ public override IList<Double> CreateGenericValue (ref JniObjectReference referen
14781479
(refJniObjectReferenceh,JniObjectReferenceOptionso)=>newJavaDoubleArray(refh,o));
14791480
}
14801481

1481-
publicoverrideJniValueMarshalerStateCreateGenericObjectReferenceArgumentState(IList<Double>value,ParameterAttributessynchronize)
1482+
publicoverrideJniValueMarshalerStateCreateGenericObjectReferenceArgumentState([MaybeNull]IList<Double>value,ParameterAttributessynchronize)
14821483
{
14831484
returnJavaArray<Double>.CreateArgumentState(value,synchronize,(list,copy)=>{
14841485
vara=copy
@@ -1489,7 +1490,7 @@ public override JniValueMarshalerState CreateGenericObjectReferenceArgumentState
14891490
});
14901491
}
14911492

1492-
publicoverridevoidDestroyGenericArgumentState(IList<Double>value,refJniValueMarshalerStatestate,ParameterAttributessynchronize)
1493+
publicoverridevoidDestroyGenericArgumentState([AllowNull]IList<Double>value,refJniValueMarshalerStatestate,ParameterAttributessynchronize)
14931494
{
14941495
JavaArray<Double>.DestroyArgumentState<JavaDoubleArray>(value,refstate,synchronize);
14951496
}

‎src/Java.Interop/Java.Interop/JavaProxyObject.cs‎

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
#nullable enable
1+
#nullable enable
22

33
usingSystem;
44
usingSystem.Diagnostics.CodeAnalysis;
@@ -51,7 +51,7 @@ public override bool Equals (object? obj)
5151

5252
publicboolEquals(JavaProxyObject?other)=>object.Equals(Value,other?.Value);
5353

54-
publicoverridestringToString()
54+
publicoverridestring?ToString()
5555
{
5656
returnValue.ToString();
5757
}
@@ -63,8 +63,7 @@ public override string ToString ()
6363
returnnull;
6464

6565
lock(CachedValues){
66-
JavaProxyObjectproxy;
67-
if(CachedValues.TryGetValue(value,outproxy))
66+
if(CachedValues.TryGetValue(value,outvarproxy))
6867
returnproxy;
6968
proxy=newJavaProxyObject(value);
7069
CachedValues.Add(value,proxy);

0 commit comments

Comments
 (0)