# System.Runtime.InteropServices.Marshalling

``` diff
 namespace System.Runtime.InteropServices.Marshalling {
     public static class ReadOnlySpanMarshaller<T, TUnmanagedElement> where TUnmanagedElement : struct {
+        public struct ManagedToUnmanagedOut {
+            public void Free();
+            public unsafe void FromUnmanaged(TUnmanagedElement* unmanaged);
+            public Span<T> GetManagedValuesDestination(int numElements);
+            public ReadOnlySpan<TUnmanagedElement> GetUnmanagedValuesSource(int numElements);
+            public ReadOnlySpan<T> ToManaged();
+        }
     }
 }
```

