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

◆ StartsWith< T >() [1/2]

static bool System.MemoryExtensions.StartsWith< T > ( this ReadOnlySpan< T > span,
ReadOnlySpan< T > value )
inlinestatic
Type Constraints
T :IEquatable<T> 

Definition at line 949 of file MemoryExtensions.cs.

950 {
951 int length = value.Length;
952 if (RuntimeHelpers.IsBitwiseEquatable<T>())
953 {
954 nuint num = (nuint)Unsafe.SizeOf<T>();
955 if (length <= span.Length)
956 {
957 return SpanHelpers.SequenceEqual(ref Unsafe.As<T, byte>(ref MemoryMarshal.GetReference(span)), ref Unsafe.As<T, byte>(ref MemoryMarshal.GetReference(value)), (uint)length * num);
958 }
959 return false;
960 }
961 if (length <= span.Length)
962 {
963 return SpanHelpers.SequenceEqual(ref MemoryMarshal.GetReference(span), ref MemoryMarshal.GetReference(value), length);
964 }
965 return false;
966 }

References System.length, System.SpanHelpers.SequenceEqual(), System.T, and System.value.