public override JniValueMarshalerState CreateGenericObjectReferenceArgumentState(IList <T> value, ParameterAttributes synchronize) { return(JavaArray <T> .CreateArgumentState(value, synchronize, (list, copy) => { var a = copy ? new JavaObjectArray <T> (list) : new JavaObjectArray <T> (list.Count); a.forMarshalCollection = true; return a; })); }
public override void DestroyGenericArgumentState(IList <T> value, ref JniValueMarshalerState state, ParameterAttributes synchronize) { JavaArray <T> .DestroyArgumentState <JavaObjectArray <T> > (value, ref state, synchronize); }
public override IList <T> CreateGenericValue(ref JniObjectReference reference, JniObjectReferenceOptions options, Type targetType) { return(JavaArray <T> .CreateValue(ref reference, options, targetType, (ref JniObjectReference h, JniObjectReferenceOptions t) => new JavaObjectArray <T> (ref h, t) { forMarshalCollection = true, })); }