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

◆ RemoveAt()

void System.Security.SecureString.RemoveAt ( int index)
inline

Definition at line 247 of file SecureString.cs.

248 {
249 lock (_methodLock)
250 {
251 if (index < 0 || index >= _decryptedLength)
252 {
253 throw new ArgumentOutOfRangeException("index", SR.ArgumentOutOfRange_IndexString);
254 }
257 SafeBuffer bufferToRelease = null;
258 try
259 {
261 Span<char> span = AcquireSpan(ref bufferToRelease);
262 span.Slice(index + 1, _decryptedLength - (index + 1)).CopyTo(span.Slice(index));
264 }
265 finally
266 {
268 bufferToRelease?.DangerousRelease();
269 }
270 }
271 }
unsafe Span< char > AcquireSpan(ref SafeBuffer bufferToRelease)

References System.Security.SecureString._decryptedLength, System.Security.SecureString._methodLock, System.Security.SecureString.AcquireSpan(), System.SR.ArgumentOutOfRange_IndexString, System.Runtime.InteropServices.SafeHandle.DangerousRelease(), System.Security.SecureString.EnsureNotDisposed(), System.Security.SecureString.EnsureNotReadOnly(), System.index, System.Security.SecureString.ProtectMemory(), System.Span< T >.Slice(), and System.Security.SecureString.UnprotectMemory().