Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ CopyFrom() [2/2]

void System.Net.MultiMemory.CopyFrom ( ReadOnlySpan< byte > source)
inline

Definition at line 79 of file MultiMemory.cs.

80 {
81 if (_length < source.Length)
82 {
83 throw new ArgumentOutOfRangeException("source");
84 }
85 int blockCount = BlockCount;
86 for (int i = 0; i < blockCount; i++)
87 {
88 Memory<byte> block = GetBlock(i);
89 if (source.Length <= block.Length)
90 {
91 source.CopyTo(block.Span);
92 break;
93 }
94 source.Slice(0, block.Length).CopyTo(block.Span);
95 source = source.Slice(block.Length);
96 }
97 }
readonly uint _length
Memory< byte > GetBlock(int blockIndex)

References System.Net.MultiMemory._length, System.Net.MultiMemory.BlockCount, System.Net.MultiMemory.GetBlock(), System.Memory< T >.Length, System.source, and System.Memory< T >.Span.