terraria-cpp2il-methodrecon v1.4.4.9
Terraria mobile dump, with reconstructed method body. Dump with CallAnalysis: https://infinitynichto.github.io/terraria-cpp2il
Loading...
Searching...
No Matches

◆ WriteCore()

unsafe void System.IO.UnmanagedMemoryStream.WriteCore ( ReadOnlySpan< byte > buffer)
inlinepackageinherited

Definition at line 379 of file UnmanagedMemoryStream.cs.

380 {
381 this.EnsureNotClosed();
382 this.EnsureWriteable();
383 long num = 0L;
384 long num3;
385 long num2 = Interlocked.Read(num3);
386 long capacity = this._capacity;
387 if (this._buffer == null)
388 {
389 byte* mem = this._mem;
390 long num4 = Interlocked.Exchange(num2, num);
391 }
392 byte reference = MemoryMarshal.GetReference(buffer);
393 if (this._buffer != null)
394 {
395 long capacity2 = this._capacity;
398 long offset = this._offset;
399 long num5 = 0L;
400 int num6 = 14;
401 if (capacity2 != 0L)
402 {
403 this._buffer.ReleasePointer();
404 }
405 if (num5 != 0L)
406 {
407 throw new OutOfMemoryException();
408 }
409 if (num6 != 0)
410 {
411 return;
412 }
413 }
414 byte* mem2 = this._mem;
415 }
class f__AnonymousType0<< Count > j__TPar
static int Exchange(int location1, int value)
static long Read(long location)

References System.IO.UnmanagedMemoryStream._buffer, System.IO.UnmanagedMemoryStream._capacity, System.IO.UnmanagedMemoryStream._mem, System.IO.UnmanagedMemoryStream._offset, System.capacity, System.IO.UnmanagedMemoryStream.EnsureNotClosed(), System.IO.UnmanagedMemoryStream.EnsureWriteable(), System.Threading.Interlocked.Exchange(), j__TPar, System.L, System.offset, System.Runtime.CompilerServices.RuntimeHelpers.PrepareConstrainedRegions(), System.Threading.Interlocked.Read(), and System.Runtime.InteropServices.SafeBuffer.ReleasePointer().

Referenced by System.IO.UnmanagedMemoryStream.Write().