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

◆ ComputeHash32OrdinalIgnoreCaseSlow()

static int System.Marvin.ComputeHash32OrdinalIgnoreCaseSlow ( ref char data,
int count,
uint p0,
uint p1 )
inlinestaticprivate

Definition at line 144 of file Marvin.cs.

145 {
146 char[] array = null;
147 Span<char> span = (((uint)count > 64u) ? ((Span<char>)(array = ArrayPool<char>.Shared.Rent(count))) : stackalloc char[64]);
148 Span<char> span2 = span;
149 int num = Ordinal.ToUpperOrdinal(new ReadOnlySpan<char>(ref data, count), span2);
150 int result = ComputeHash32(ref Unsafe.As<char, byte>(ref MemoryMarshal.GetReference(span2)), (uint)(num * 2), p0, p1);
151 if (array != null)
152 {
154 }
155 return result;
156 }
static ArrayPool< T > Shared
Definition ArrayPool.cs:7
T[] Rent(int minimumLength)
static int ToUpperOrdinal(ReadOnlySpan< char > source, Span< char > destination)
Definition Ordinal.cs:193
static int ComputeHash32(ReadOnlySpan< byte > data, ulong seed)
Definition Marvin.cs:17

References System.array, System.Marvin.ComputeHash32(), System.count, System.Buffers.ArrayPool< T >.Rent(), System.Buffers.ArrayPool< T >.Shared, and System.Globalization.Ordinal.ToUpperOrdinal().

Referenced by System.Marvin.ComputeHash32OrdinalIgnoreCase().