internal unsafe static void ConvertContentsToNative_Nullable <T>(ref T?[] managedArray, IntPtr pNativeHome) where T : struct
 {
     if (managedArray != null)
     {
         IntPtr *ptr = *(IntPtr *)((void *)pNativeHome);
         for (int i = 0; i < managedArray.Length; i++)
         {
             ptr[i] = NullableMarshaler.ConvertToNative <T>(ref managedArray[i]);
         }
     }
 }
Exemplo n.º 2
0
        internal static unsafe void ConvertContentsToNative_Nullable <T>(ref T?[] managedArray, IntPtr pNativeHome) where T : struct
        {
            if (managedArray == null)
            {
                return;
            }
            IntPtr *numPtr = (IntPtr *)*(IntPtr *)(void *)pNativeHome;

            for (int index = 0; index < managedArray.Length; ++index)
            {
                numPtr[index] = NullableMarshaler.ConvertToNative <T>(ref managedArray[index]);
            }
        }
Exemplo n.º 3
0
 internal static void ConvertToManagedRetVoid <T>(IntPtr pNative, ref T?retObj) where T : struct
 {
     retObj = NullableMarshaler.ConvertToManaged <T>(pNative);
 }