Requires
<PolyArgumentExceptions>true</PolyArgumentExceptions>in the consuming project.
Requires
<PolyArgumentExceptions>true</PolyArgumentExceptions>in the consuming project.
Requires
<PolyArgumentExceptions>true</PolyArgumentExceptions>in the consuming project.
void ThrowIfEqual<T>(T, T) where T : IEquatable<T>?referencevoid ThrowIfGreaterThan(nint, nint)void ThrowIfGreaterThan<T>(T, T) where T : IComparable<T>referencevoid ThrowIfGreaterThanOrEqual(nint, nint)void ThrowIfGreaterThanOrEqual<T>(T, T) where T : IComparable<T>referencevoid ThrowIfLessThan(nint, nint)void ThrowIfLessThan<T>(T, T) where T : IComparable<T>referencevoid ThrowIfLessThanOrEqual(nint, nint)void ThrowIfLessThanOrEqual<T>(T, T) where T : IComparable<T>referencevoid ThrowIfNegative(nint)referencevoid ThrowIfNegative<T>(T) where T : struct, IComparable<T>referencevoid ThrowIfNegativeOrZero(nint)void ThrowIfNegativeOrZero<T>(T) where T : struct, IComparable<T>referencevoid ThrowIfNotEqual<T>(T, T) where T : IEquatable<T>?referencevoid ThrowIfZero(nint)void ThrowIfZero<T>(T) where T : struct, IEquatable<T>reference
void ResetWrittenCount<T>()reference- Note: Delegates to Clear(), so the written region is zeroed: O(n) where the BCL is O(1), and the reclaimed space is zeroed instead of holding the stale data the BCL leaves behind.
void CopyTo<T>(ArraySegment<T>)referencevoid CopyTo<T>(T[], int)referencevoid CopyTo<T>(T[])referenceArraySegmentEnumerator<T> GetEnumerator<T>()reference
OperationStatus DecodeFromChars(ReadOnlySpan<char>, Span<byte>, int, int, bool)referenceint DecodeFromChars(ReadOnlySpan<char>, Span<byte>)referencebyte[] DecodeFromChars(ReadOnlySpan<char>)referencebyte[] DecodeFromUtf8(ReadOnlySpan<byte>)referenceOperationStatus EncodeToChars(ReadOnlySpan<byte>, Span<char>, int, int, bool)referenceint EncodeToChars(ReadOnlySpan<byte>, Span<char>)referencechar[] EncodeToChars(ReadOnlySpan<byte>)referencestring EncodeToString(ReadOnlySpan<byte>)referencebyte[] EncodeToUtf8(ReadOnlySpan<byte>)referenceint GetEncodedLength(int)referenceint GetMaxDecodedLength(int)referencebool TryDecodeFromChars(ReadOnlySpan<char>, Span<byte>, int)referencebool TryEncodeToChars(ReadOnlySpan<byte>, Span<char>, int)reference
BigInteger Parse(ReadOnlySpan<byte>, IFormatProvider?)referenceBigInteger Parse(ReadOnlySpan<byte>, NumberStyles, IFormatProvider?)referencebool TryFormat(Span<byte>, int, ReadOnlySpan<char>, IFormatProvider?)referencebool TryParse(ReadOnlySpan<byte>, BigInteger)referencebool TryParse(ReadOnlySpan<byte>, IFormatProvider?, BigInteger)referencebool TryParse(ReadOnlySpan<byte>, NumberStyles, IFormatProvider?, BigInteger)reference
double ReadDoubleBigEndian(ReadOnlySpan<byte>)referencedouble ReadDoubleLittleEndian(ReadOnlySpan<byte>)referencefloat ReadSingleBigEndian(ReadOnlySpan<byte>)referencefloat ReadSingleLittleEndian(ReadOnlySpan<byte>)referencebool TryReadDoubleBigEndian(ReadOnlySpan<byte>, double)referencebool TryReadDoubleLittleEndian(ReadOnlySpan<byte>, double)referencebool TryReadSingleBigEndian(ReadOnlySpan<byte>, float)referencebool TryReadSingleLittleEndian(ReadOnlySpan<byte>, float)referencebool TryWriteDoubleBigEndian(Span<byte>, double)referencebool TryWriteDoubleLittleEndian(Span<byte>, double)referencebool TryWriteSingleBigEndian(Span<byte>, float)referencebool TryWriteSingleLittleEndian(Span<byte>, float)referencevoid WriteDoubleBigEndian(Span<byte>, double)referencevoid WriteDoubleLittleEndian(Span<byte>, double)referencevoid WriteSingleBigEndian(Span<byte>, float)referencevoid WriteSingleLittleEndian(Span<byte>, float)reference
ulong DoubleToUInt64Bits(double)referencebyte[] GetBytes(Half)reference- Note: Only available on net5.0 and later, since Half does not exist below that.
byte[] GetBytes(Int128)referencebyte[] GetBytes(UInt128)referenceshort HalfToInt16Bits(Half)reference- Note: Only available on net5.0 and later, since Half does not exist below that.
ushort HalfToUInt16Bits(Half)reference- Note: Only available on net5.0 and later, since Half does not exist below that.
Half Int16BitsToHalf(short)reference- Note: Only available on net5.0 and later, since Half does not exist below that.
float Int32BitsToSingle(int)referenceint SingleToInt32Bits(float)referenceuint SingleToUInt32Bits(float)referencebool ToBoolean(ReadOnlySpan<byte>)referencechar ToChar(ReadOnlySpan<byte>)referencedouble ToDouble(ReadOnlySpan<byte>)referenceHalf ToHalf(byte[], int)reference- Note: Only available on net5.0 and later, since Half does not exist below that.
Half ToHalf(ReadOnlySpan<byte>)reference- Note: Only available on net5.0 and later, since Half does not exist below that.
Int128 ToInt128(byte[], int)referenceInt128 ToInt128(ReadOnlySpan<byte>)referenceshort ToInt16(ReadOnlySpan<byte>)referenceint ToInt32(ReadOnlySpan<byte>)referencelong ToInt64(ReadOnlySpan<byte>)referencefloat ToSingle(ReadOnlySpan<byte>)referenceUInt128 ToUInt128(byte[], int)referenceUInt128 ToUInt128(ReadOnlySpan<byte>)referenceushort ToUInt16(ReadOnlySpan<byte>)referenceuint ToUInt32(ReadOnlySpan<byte>)referenceulong ToUInt64(ReadOnlySpan<byte>)referencebool TryWriteBytes(Span<byte>, bool)referencebool TryWriteBytes(Span<byte>, char)referencebool TryWriteBytes(Span<byte>, double)referencebool TryWriteBytes(Span<byte>, float)referencebool TryWriteBytes(Span<byte>, Half)reference- Note: Only available on net5.0 and later, since Half does not exist below that.
bool TryWriteBytes(Span<byte>, int)referencebool TryWriteBytes(Span<byte>, Int128)referencebool TryWriteBytes(Span<byte>, long)referencebool TryWriteBytes(Span<byte>, short)referencebool TryWriteBytes(Span<byte>, uint)referencebool TryWriteBytes(Span<byte>, UInt128)referencebool TryWriteBytes(Span<byte>, ulong)referencebool TryWriteBytes(Span<byte>, ushort)referenceHalf UInt16BitsToHalf(ushort)reference- Note: Only available on net5.0 and later, since Half does not exist below that.
float UInt32BitsToSingle(uint)referencedouble UInt64BitsToDouble(ulong)reference
bool TryFormat(Span<char>, int)reference
bool TryFormat(Span<byte>, int, ReadOnlySpan<char>, IFormatProvider?)referencebool TryFormat(Span<char>, int, ReadOnlySpan<char>, IFormatProvider?)referencebyte Log10(byte)referencebool TryParse(ReadOnlySpan<byte>, byte)referencebool TryParse(ReadOnlySpan<byte>, IFormatProvider?, byte)referencebool TryParse(ReadOnlySpan<byte>, NumberStyles, IFormatProvider?, byte)referencebool TryParse(ReadOnlySpan<char>, byte)referencebool TryParse(ReadOnlySpan<char>, IFormatProvider?, byte)referencebool TryParse(ReadOnlySpan<char>, NumberStyles, IFormatProvider?, byte)referencebool TryParse(string?, IFormatProvider?, byte)reference
CancellationTokenRegistration Register(Action<object?, CancellationToken>, object?)referenceCancellationTokenRegistration UnsafeRegister(Action<object?, CancellationToken>, object?)referenceCancellationTokenRegistration UnsafeRegister(Action<object?>, object?)reference
Task CancelAsync()reference
ReadOnlySpan<char> ValueSpanreference
bool Equals(char, StringComparison)referencebool IsAscii(char)referencebool IsAsciiDigit(char)referencebool IsAsciiHexDigit(char)referencebool IsAsciiHexDigitLower(char)referencebool IsAsciiHexDigitUpper(char)referencebool IsAsciiLetter(char)referencebool IsAsciiLetterLower(char)referencebool IsAsciiLetterOrDigit(char)referencebool IsAsciiLetterUpper(char)referencebool IsBetween(char, char, char)referencechar ToLowerOrdinal(char)reference- Note: Derived from invariant casing, so the mapping follows the Unicode version of the running framework rather than the one net11 is built against.
char ToUpperOrdinal(char)reference- Note: Derived from invariant casing, so the mapping follows the Unicode version of the running framework rather than the one net11 is built against.
bool TryParse(ReadOnlySpan<byte>, IFormatProvider?, Complex)referencebool TryParse(ReadOnlySpan<byte>, NumberStyles, IFormatProvider?, Complex)reference- Note: The matching Parse(ReadOnlySpan, ...) overloads are not polyfilled, since they would collide with BigInteger.Parse(ReadOnlySpan, ...); two static extension members with the same signature cannot coexist on one class.
void Clear<T>()reference
TValue GetOrAdd<TKey, TValue, TArg>(TKey, Func<TKey, TArg, TValue>, TArg) where TKey : notnullreference
void Clear<T>()reference
bool Remove<TKey, TValue>(TKey, TValue) where TKey : class where TValue : classreference- Note: Lookup and removal are not performed under the table lock, so the operation is not atomic with regard to concurrent mutations.
SafeFileHandle OpenStandardErrorHandle()referenceSafeFileHandle OpenStandardInputHandle()referenceSafeFileHandle OpenStandardOutputHandle()reference
OperationStatus FromHexString(ReadOnlySpan<byte>, Span<byte>, int, int)referencebyte[] FromHexString(ReadOnlySpan<byte>)referenceOperationStatus FromHexString(ReadOnlySpan<char>, Span<byte>, int, int)referencebyte[] FromHexString(ReadOnlySpan<char>)referenceOperationStatus FromHexString(string, Span<byte>, int, int)referencebyte[] FromHexString(string)referencestring ToHexString(byte[], int, int)referencestring ToHexString(byte[])referencestring ToHexString(ReadOnlySpan<byte>)referencestring ToHexStringLower(byte[], int, int)referencestring ToHexStringLower(byte[])referencestring ToHexStringLower(ReadOnlySpan<byte>)referencebool TryFromBase64Chars(ReadOnlySpan<char>, Span<byte>, int)referencebool TryFromBase64String(string, Span<byte>, int)referencebool TryToBase64Chars(ReadOnlySpan<byte>, Span<char>, int, Base64FormattingOptions)referencebool TryToHexString(ReadOnlySpan<byte>, Span<byte>, int)referencebool TryToHexString(ReadOnlySpan<byte>, Span<char>, int)referencebool TryToHexStringLower(ReadOnlySpan<byte>, Span<byte>, int)referencebool TryToHexStringLower(ReadOnlySpan<byte>, Span<char>, int)reference
void Deconstruct(int, int, int)referencebool TryFormat(Span<byte>, int, ReadOnlySpan<char>, IFormatProvider?)referencebool TryFormat(Span<char>, int, ReadOnlySpan<char>, IFormatProvider?)reference
DateTime AddMicroseconds(double)referencevoid Deconstruct(DateOnly, TimeOnly)referencevoid Deconstruct(int, int, int)referencebool TryFormat(Span<byte>, int, ReadOnlySpan<char>, IFormatProvider?)referencebool TryFormat(Span<char>, int, ReadOnlySpan<char>, IFormatProvider?)referencebool TryParse(ReadOnlySpan<char>, DateTime)referencebool TryParse(ReadOnlySpan<char>, IFormatProvider?, DateTime)referencebool TryParse(ReadOnlySpan<char>, IFormatProvider?, DateTimeStyles, DateTime)referencebool TryParse(string?, IFormatProvider?, DateTime)referencebool TryParseExact(ReadOnlySpan<char>, ReadOnlySpan<char>, IFormatProvider?, DateTimeStyles, DateTime)referencebool TryParseExact(ReadOnlySpan<char>, string, IFormatProvider?, DateTimeStyles, DateTime)referenceint Microsecondreferenceint Nanosecondreference
DateTimeOffset AddMicroseconds(double)referencevoid Deconstruct(DateOnly, TimeOnly, TimeSpan)referencebool TryFormat(Span<byte>, int, ReadOnlySpan<char>, IFormatProvider?)referencebool TryFormat(Span<char>, int, ReadOnlySpan<char>, IFormatProvider?)referencebool TryParse(ReadOnlySpan<char>, DateTimeOffset)referencebool TryParse(ReadOnlySpan<char>, IFormatProvider?, DateTimeOffset)referencebool TryParse(ReadOnlySpan<char>, IFormatProvider?, DateTimeStyles, DateTimeOffset)referencebool TryParse(string?, IFormatProvider?, DateTimeOffset)referencebool TryParseExact(ReadOnlySpan<char>, ReadOnlySpan<char>, IFormatProvider?, DateTimeStyles, DateTimeOffset)referencebool TryParseExact(ReadOnlySpan<char>, string, IFormatProvider?, DateTimeStyles, DateTimeOffset)referenceint Microsecondreferenceint Nanosecondreference
bool TryFormat(Span<byte>, int, ReadOnlySpan<char>, IFormatProvider?)referencebool TryFormat(Span<char>, int, ReadOnlySpan<char>, IFormatProvider?)referencebool TryParse(ReadOnlySpan<byte>, decimal)referencebool TryParse(ReadOnlySpan<byte>, IFormatProvider?, decimal)referencebool TryParse(ReadOnlySpan<byte>, NumberStyles, IFormatProvider?, decimal)referencebool TryParse(ReadOnlySpan<char>, decimal)referencebool TryParse(ReadOnlySpan<char>, IFormatProvider?, decimal)referencebool TryParse(ReadOnlySpan<char>, NumberStyles, IFormatProvider?, decimal)referencebool TryParse(string?, IFormatProvider?, decimal)reference
void Clear()reference
InvocationListEnumerator<TDelegate> EnumerateInvocationList<TDelegate>(TDelegate?) where TDelegate : Delegatereferencebool HasSingleTargetreference
void EnsureCapacity<TKey, TValue>(int)reference- Note: No-op on older targets; the BCL grows the backing storage.
DictionaryAlternateLookup<TKey, TValue, TAlternateKey> GetAlternateLookup<TKey, TValue, TAlternateKey>() where TKey : notnullreference- Note: Lookups are O(n) on older targets; the BCL is O(1).
- Note: Returns the free-standing
DictionaryAlternateLookup<TKey, TValue, TAlternateKey>rather than the BCL's nestedDictionary<TKey, TValue>.AlternateLookup<TAlternateKey>. Usevarfor cross-target code.
void TrimExcess<TKey, TValue>(int)reference- Note: No-op on older targets; the BCL shrinks the backing storage.
void TrimExcess<TKey, TValue>()reference- Note: No-op on older targets; the BCL shrinks the backing storage.
bool TryGetAlternateLookup<TKey, TValue, TAlternateKey>(DictionaryAlternateLookup<TKey, TValue, TAlternateKey>) where TKey : notnullreference- Note: Lookups are O(n) on older targets; the BCL is O(1).
void Deconstruct(object, object?)reference
DirectoryInfo CreateTempSubdirectory(string?)referenceIEnumerable<string> EnumerateDirectories(string, string, EnumerationOptions)referenceIEnumerable<string> EnumerateFiles(string, string, EnumerationOptions)referenceIEnumerable<string> EnumerateFileSystemEntries(string, string, EnumerationOptions)referencestring[] GetDirectories(string, string, EnumerationOptions)referencestring[] GetFiles(string, string, EnumerationOptions)referencestring[] GetFileSystemEntries(string, string, EnumerationOptions)reference
IEnumerable<DirectoryInfo> EnumerateDirectories(string, EnumerationOptions)referenceIEnumerable<FileInfo> EnumerateFiles(string, EnumerationOptions)referenceIEnumerable<FileSystemInfo> EnumerateFileSystemInfos(string, EnumerationOptions)referenceDirectoryInfo[] GetDirectories(string, EnumerationOptions)referenceFileInfo[] GetFiles(string, EnumerationOptions)referenceFileSystemInfo[] GetFileSystemInfos(string, EnumerationOptions)reference
bool TryFormat(Span<byte>, int, ReadOnlySpan<char>, IFormatProvider?)referencebool TryFormat(Span<char>, int, ReadOnlySpan<char>, IFormatProvider?)referencebool TryParse(ReadOnlySpan<byte>, double)referencebool TryParse(ReadOnlySpan<byte>, IFormatProvider?, double)referencebool TryParse(ReadOnlySpan<byte>, NumberStyles, IFormatProvider?, double)referencebool TryParse(ReadOnlySpan<char>, double)referencebool TryParse(ReadOnlySpan<char>, IFormatProvider?, double)referencebool TryParse(ReadOnlySpan<char>, NumberStyles, IFormatProvider?, double)referencebool TryParse(string?, IFormatProvider?, double)reference
void Convert(ReadOnlySpan<char>, Span<byte>, bool, int, int, bool)reference
int GetByteCount(ReadOnlySpan<char>)referenceint GetBytes(ReadOnlySpan<char>, Span<byte>)referenceint GetCharCount(ReadOnlySpan<byte>)referenceint GetChars(ReadOnlySpan<byte>, Span<char>)referencestring GetString(ReadOnlySpan<byte>)referencebool TryGetBytes(ReadOnlySpan<char>, Span<byte>, int)referencebool TryGetChars(ReadOnlySpan<byte>, Span<char>, int)referenceEncoding Latin1referenceReadOnlySpan<byte> Preamblereference- Note: Allocates a new array on each access, unlike the BCL property which returns a cached span.
string[] GetNames<TEnum>() where TEnum : struct, EnumreferenceTEnum[] GetValues<TEnum>() where TEnum : struct, EnumreferenceArray GetValuesAsUnderlyingType(Type)referenceArray GetValuesAsUnderlyingType<TEnum>() where TEnum : struct, Enumreferencebool IsDefined<TEnum>(TEnum) where TEnum : struct, EnumreferenceTEnum Parse<TEnum>(ReadOnlySpan<char>, bool) where TEnum : struct, EnumreferenceTEnum Parse<TEnum>(ReadOnlySpan<char>) where TEnum : struct, EnumreferenceTEnum Parse<TEnum>(string, bool) where TEnum : struct, EnumreferenceTEnum Parse<TEnum>(string) where TEnum : struct, Enumreferencebool TryFormat<TEnum>(TEnum, Span<char>, int, ReadOnlySpan<char>) where TEnum : struct, Enumreferencebool TryParse<TEnum>(ReadOnlySpan<char>, bool, TEnum) where TEnum : struct, Enumreferencebool TryParse<TEnum>(ReadOnlySpan<char>, TEnum) where TEnum : struct, Enumreference
IEnumerable<T> InfiniteSequence<T>(T, T) where T : IAdditionOperators<T, T, T>referenceIEnumerable<T> Sequence<T>(T, T, T) where T : INumber<T>reference
EqualityComparer<T> Create(Func<T?, T?, bool>, Func<T, int>?)referenceEqualityComparer<T> Create<TKey>(Func<T?, TKey?>, IEqualityComparer<TKey>?)reference
NullabilityState GetNullability()NullabilityInfo GetNullabilityInfo()bool IsNullable()
Exception SetCurrentStackTrace(Exception)reference
NullabilityState GetNullability()NullabilityInfo GetNullabilityInfo()bool IsNullable()
void AppendAllBytes(string, byte[])referencevoid AppendAllBytes(string, ReadOnlySpan<byte>)referenceTask AppendAllBytesAsync(string, byte[], CancellationToken)referenceTask AppendAllBytesAsync(string, ReadOnlyMemory<byte>, CancellationToken)referenceTask AppendAllLinesAsync(string, IEnumerable<string>, CancellationToken)referenceTask AppendAllLinesAsync(string, IEnumerable<string>, Encoding, CancellationToken)referencevoid AppendAllText(string, ReadOnlySpan<char>, Encoding)referencevoid AppendAllText(string, ReadOnlySpan<char>)referenceTask AppendAllTextAsync(string, ReadOnlyMemory<char>, CancellationToken)referenceTask AppendAllTextAsync(string, ReadOnlyMemory<char>, Encoding, CancellationToken)referenceTask AppendAllTextAsync(string, string?, CancellationToken)referenceTask AppendAllTextAsync(string, string?, Encoding, CancellationToken)referenceFileSystemInfo CreateHardLink(string, string)referencevoid Move(string, string, bool)referenceSafeFileHandle OpenNullHandle()referenceTask<byte[]> ReadAllBytesAsync(string, CancellationToken)referenceTask<string[]> ReadAllLinesAsync(string, CancellationToken)referenceTask<string[]> ReadAllLinesAsync(string, Encoding, CancellationToken)referenceTask<string> ReadAllTextAsync(string, CancellationToken)referenceTask<string> ReadAllTextAsync(string, Encoding, CancellationToken)referenceIAsyncEnumerable<string> ReadLinesAsync(string, CancellationToken)referenceIAsyncEnumerable<string> ReadLinesAsync(string, Encoding, CancellationToken)referencevoid WriteAllBytes(string, ReadOnlySpan<byte>)reference- Note: Copies the span to an array and uses the array overload, so this allocates where the BCL writes straight from the span.
- Note: Only reached when the argument is already a ReadOnlySpan. A byte array binds to the BCL array overload, exactly as it does without Polyfill.
Task WriteAllBytesAsync(string, byte[], CancellationToken)referenceTask WriteAllBytesAsync(string, ReadOnlyMemory<byte>, CancellationToken)referenceTask WriteAllLinesAsync(string, IEnumerable<string>, CancellationToken)referenceTask WriteAllLinesAsync(string, IEnumerable<string>, Encoding, CancellationToken)referencevoid WriteAllText(string, ReadOnlySpan<char>, Encoding)referencevoid WriteAllText(string, ReadOnlySpan<char>)referenceTask WriteAllTextAsync(string, string?, CancellationToken)referenceTask WriteAllTextAsync(string, string?, Encoding, CancellationToken)reference
void CreateAsHardLink(string)reference
T[] AllocateUninitializedArray<T>(int, bool)reference
bool TryFormat(Span<byte>, int, ReadOnlySpan<char>)referencebool TryFormat(Span<char>, int, ReadOnlySpan<char>)referenceint Variantreferenceint VersionreferenceGuid CreateVersion7()referenceGuid CreateVersion7(DateTimeOffset)referenceGuid Parse(ReadOnlySpan<byte>)referencebool TryParse(ReadOnlySpan<byte>, Guid)referencebool TryParse(ReadOnlySpan<char>, Guid)referencebool TryParse(ReadOnlySpan<char>, IFormatProvider?, Guid)referencebool TryParse(string?, IFormatProvider?, Guid)referencebool TryParseExact(ReadOnlySpan<char>, ReadOnlySpan<char>, Guid)referenceGuid AllBitsSetreference
void EnsureCapacity<T>(int)reference- Note: No-op on older targets; the BCL grows the backing storage.
HashSetAlternateLookup<T, TAlternate> GetAlternateLookup<T, TAlternate>()reference- Note: Lookups are O(n) on older targets; the BCL is O(1).
- Note: Returns the free-standing
HashSetAlternateLookup<T, TAlternate>rather than the BCL's nestedHashSet<T>.AlternateLookup<TAlternate>. Usevarfor cross-target code.
void TrimExcess<T>(int)reference- Note: No-op on older targets; the BCL shrinks the backing storage.
bool TryGetAlternateLookup<T, TAlternate>(HashSetAlternateLookup<T, TAlternate>)reference- Note: Lookups are O(n) on older targets; the BCL is O(1).
bool TryGetValue<T>(T, T)reference
Task<byte[]> GetByteArrayAsync(string, CancellationToken)referenceTask<byte[]> GetByteArrayAsync(Uri, CancellationToken)referenceTask<Stream> GetStreamAsync(string, CancellationToken)referenceTask<Stream> GetStreamAsync(Uri, CancellationToken)referenceTask<string> GetStringAsync(string, CancellationToken)referenceTask<string> GetStringAsync(Uri, CancellationToken)referenceTask<HttpResponseMessage> PatchAsync(string?, HttpContent?, CancellationToken)referenceTask<HttpResponseMessage> PatchAsync(string?, HttpContent?)referenceTask<HttpResponseMessage> PatchAsync(Uri?, HttpContent?, CancellationToken)referenceTask<HttpResponseMessage> PatchAsync(Uri?, HttpContent?)referenceHttpResponseMessage Send(HttpRequestMessage, CancellationToken)referenceHttpResponseMessage Send(HttpRequestMessage, HttpCompletionOption, CancellationToken)referenceHttpResponseMessage Send(HttpRequestMessage, HttpCompletionOption)referenceHttpResponseMessage Send(HttpRequestMessage)reference
void CopyTo(Stream, System.Net.TransportContext?, CancellationToken)referenceTask CopyToAsync(Stream, CancellationToken)referenceTask CopyToAsync(Stream, System.Net.TransportContext?, CancellationToken)referenceTask LoadIntoBufferAsync(CancellationToken)referenceTask LoadIntoBufferAsync(long, CancellationToken)referenceTask<byte[]> ReadAsByteArrayAsync(CancellationToken)referenceStream ReadAsStream(CancellationToken)referenceTask<Stream> ReadAsStreamAsync(CancellationToken)referenceTask<string> ReadAsStringAsync(CancellationToken)reference
ReadOnlyDictionary<TKey, TValue> AsReadOnly<TKey, TValue>() where TKey : notnullreferencebool Remove<TKey, TValue>(TKey, TValue) where TKey : notnullreferencebool TryAdd<TKey, TValue>(TKey, TValue) where TKey : notnullreference
Dictionary<TKey, TValue> ToDictionary<TKey, TValue>(IEqualityComparer<TKey>?) where TKey : notnullreference
IOrderedEnumerable<T> Order<T>(IComparer<T>?)referenceIOrderedEnumerable<T> Order<T>()referenceIOrderedEnumerable<T> OrderDescending<T>(IComparer<T>?)referenceIOrderedEnumerable<T> OrderDescending<T>()reference
IEnumerable<(TFirst First, TSecond Second, TThird Third)> Zip<TFirst, TSecond, TThird>(IEnumerable<TSecond>, IEnumerable<TThird>)referenceIEnumerable<(TFirst First, TSecond Second)> Zip<TFirst, TSecond>(IEnumerable<TSecond>)reference
IEnumerable<TResult> FullJoin<TOuter, TInner, TKey, TResult>(IEnumerable<TInner>, Func<TOuter, TKey>, Func<TInner, TKey>, Func<TOuter?, TInner?, TResult>, IEqualityComparer<TKey>?)referenceIEnumerable<(TOuter? Outer, TInner? Inner)> FullJoin<TOuter, TInner, TKey>(IEnumerable<TInner>, Func<TOuter, TKey>, Func<TInner, TKey>, IEqualityComparer<TKey>?)referenceIEnumerable<IGrouping<TOuter, TInner>> GroupJoin<TOuter, TInner, TKey>(IEnumerable<TInner>, Func<TOuter, TKey>, Func<TInner, TKey>, IEqualityComparer<TKey>?)referenceIEnumerable<(TOuter Outer, TInner Inner)> Join<TOuter, TInner, TKey>(IEnumerable<TInner>, Func<TOuter, TKey>, Func<TInner, TKey>, IEqualityComparer<TKey>?)referenceIEnumerable<TResult> LeftJoin<TOuter, TInner, TKey, TResult>(IEnumerable<TInner>, Func<TOuter, TKey>, Func<TInner, TKey>, Func<TOuter, TInner?, TResult>, IEqualityComparer<TKey>?)referenceIEnumerable<TResult> LeftJoin<TOuter, TInner, TKey, TResult>(IEnumerable<TInner>, Func<TOuter, TKey>, Func<TInner, TKey>, Func<TOuter, TInner?, TResult>)referenceIEnumerable<(TOuter Outer, TInner? Inner)> LeftJoin<TOuter, TInner, TKey>(IEnumerable<TInner>, Func<TOuter, TKey>, Func<TInner, TKey>, IEqualityComparer<TKey>?)referenceIEnumerable<TResult> RightJoin<TOuter, TInner, TKey, TResult>(IEnumerable<TInner>, Func<TOuter, TKey>, Func<TInner, TKey>, Func<TOuter?, TInner, TResult>, IEqualityComparer<TKey>?)referenceIEnumerable<TResult> RightJoin<TOuter, TInner, TKey, TResult>(IEnumerable<TInner>, Func<TOuter, TKey>, Func<TInner, TKey>, Func<TOuter?, TInner, TResult>)referenceIEnumerable<(TOuter? Outer, TInner Inner)> RightJoin<TOuter, TInner, TKey>(IEnumerable<TInner>, Func<TOuter, TKey>, Func<TInner, TKey>, IEqualityComparer<TKey>?)reference
IEnumerable<KeyValuePair<TKey, TAccumulate>> AggregateBy<TSource, TKey, TAccumulate>(Func<TSource, TKey>, Func<TKey, TAccumulate>, Func<TAccumulate, TSource, TAccumulate>, IEqualityComparer<TKey>?) where TKey : notnullreferenceIEnumerable<KeyValuePair<TKey, TAccumulate>> AggregateBy<TSource, TKey, TAccumulate>(Func<TSource, TKey>, TAccumulate, Func<TAccumulate, TSource, TAccumulate>, IEqualityComparer<TKey>?) where TKey : notnullreferenceIEnumerable<TSource> Append<TSource>(TSource)referenceIEnumerable<TSource[]> Chunk<TSource>(int)referenceIEnumerable<KeyValuePair<TKey, int>> CountBy<TSource, TKey>(Func<TSource, TKey>, IEqualityComparer<TKey>?) where TKey : notnullreferenceIEnumerable<TSource> DistinctBy<TSource, TKey>(Func<TSource, TKey>, IEqualityComparer<TKey>?)referenceIEnumerable<TSource> DistinctBy<TSource, TKey>(Func<TSource, TKey>)referenceTSource ElementAt<TSource>(Index)referenceTSource? ElementAtOrDefault<TSource>(Index)referenceIEnumerable<TSource> Except<TSource>(IEqualityComparer<TSource>?, TSource[])referenceIEnumerable<TSource> Except<TSource>(TSource, IEqualityComparer<TSource>?)referenceIEnumerable<TSource> Except<TSource>(TSource)referenceIEnumerable<TSource> ExceptBy<TSource, TKey>(IEnumerable<TKey>, Func<TSource, TKey>, IEqualityComparer<TKey>?)referenceIEnumerable<TSource> ExceptBy<TSource, TKey>(IEnumerable<TKey>, Func<TSource, TKey>)referenceTSource FirstOrDefault<TSource>(Func<TSource, bool>, TSource)referenceTSource FirstOrDefault<TSource>(TSource)referenceIEnumerable<(int Index, TSource Item)> Index<TSource>()referenceIEnumerable<TSource> IntersectBy<TSource, TKey>(IEnumerable<TKey>, Func<TSource, TKey>, IEqualityComparer<TKey>?)referenceIEnumerable<TSource> IntersectBy<TSource, TKey>(IEnumerable<TKey>, Func<TSource, TKey>)referenceTSource LastOrDefault<TSource>(Func<TSource, bool>, TSource)referenceTSource LastOrDefault<TSource>(TSource)referenceTSource? Max<TSource>(IComparer<TSource>?)referenceTSource? MaxBy<TSource, TKey>(Func<TSource, TKey>, IComparer<TKey>?)referenceTSource? MaxBy<TSource, TKey>(Func<TSource, TKey>)referenceTSource? Min<TSource>(IComparer<TSource>?)referenceTSource? MinBy<TSource, TKey>(Func<TSource, TKey>, IComparer<TKey>?)referenceTSource? MinBy<TSource, TKey>(Func<TSource, TKey>)referenceIEnumerable<TSource> Prepend<TSource>(TSource)referenceTSource SingleOrDefault<TSource>(Func<TSource, bool>, TSource)referenceTSource SingleOrDefault<TSource>(TSource)referenceIEnumerable<TSource> SkipLast<TSource>(int)referenceIEnumerable<TSource> Take<TSource>(Range)referenceIEnumerable<TSource> TakeLast<TSource>(int)referenceHashSet<TSource> ToHashSet<TSource>(IEqualityComparer<TSource>?)referencebool TryGetNonEnumeratedCount<TSource>(int)referenceIEnumerable<TSource> UnionBy<TSource, TKey>(IEnumerable<TSource>, Func<TSource, TKey>, IEqualityComparer<TKey>?)referenceIEnumerable<TSource> UnionBy<TSource, TKey>(IEnumerable<TSource>, Func<TSource, TKey>)reference
ReadOnlyCollection<T> AsReadOnly<T>()reference
ImmutableDictionary<TKey, TValue> CreateRangeWithOverwrite<TKey, TValue>(IEqualityComparer<TKey>?, ReadOnlySpan<KeyValuePair<TKey, TValue>>) where TKey : notnullreference- Note: Only available on netcoreapp2.1 and later, since ImmutableDictionary is a separate package below that.
ImmutableDictionary<TKey, TValue> CreateRangeWithOverwrite<TKey, TValue>(ReadOnlySpan<KeyValuePair<TKey, TValue>>) where TKey : notnullreference- Note: Only available on netcoreapp2.1 and later, since ImmutableDictionary is a separate package below that.
bool TryFormat(Span<byte>, int, ReadOnlySpan<char>, IFormatProvider?)referencebool TryFormat(Span<char>, int, ReadOnlySpan<char>, IFormatProvider?)referenceshort Log10(short)referencebool TryParse(ReadOnlySpan<byte>, IFormatProvider?, short)referencebool TryParse(ReadOnlySpan<byte>, NumberStyles, IFormatProvider?, short)referencebool TryParse(ReadOnlySpan<byte>, short)referencebool TryParse(ReadOnlySpan<char>, IFormatProvider?, short)referencebool TryParse(ReadOnlySpan<char>, NumberStyles, IFormatProvider?, short)referencebool TryParse(ReadOnlySpan<char>, short)referencebool TryParse(string?, IFormatProvider?, short)reference
bool TryFormat(Span<byte>, int, ReadOnlySpan<char>, IFormatProvider?)referencebool TryFormat(Span<char>, int, ReadOnlySpan<char>, IFormatProvider?)referencelong BigMul(int, int)referenceint Log10(int)referencebool TryParse(ReadOnlySpan<byte>, IFormatProvider?, int)referencebool TryParse(ReadOnlySpan<byte>, int)referencebool TryParse(ReadOnlySpan<byte>, NumberStyles, IFormatProvider?, int)referencebool TryParse(ReadOnlySpan<char>, IFormatProvider?, int)referencebool TryParse(ReadOnlySpan<char>, int)referencebool TryParse(ReadOnlySpan<char>, NumberStyles, IFormatProvider?, int)referencebool TryParse(string?, IFormatProvider?, int)reference
bool TryFormat(Span<byte>, int, ReadOnlySpan<char>, IFormatProvider?)referencebool TryFormat(Span<char>, int, ReadOnlySpan<char>, IFormatProvider?)referenceInt128 BigMul(long, long)reference- Note: The identical Math.BigMul overload is not polyfilled, since C# emits both static extension members onto the same class and they would collide.
- Note: Only available on net7.0 and later, since Int128 does not exist below that.
long Log10(long)referencebool TryParse(ReadOnlySpan<byte>, IFormatProvider?, long)referencebool TryParse(ReadOnlySpan<byte>, long)referencebool TryParse(ReadOnlySpan<byte>, NumberStyles, IFormatProvider?, long)referencebool TryParse(ReadOnlySpan<char>, IFormatProvider?, long)referencebool TryParse(ReadOnlySpan<char>, long)referencebool TryParse(ReadOnlySpan<char>, NumberStyles, IFormatProvider?, long)referencebool TryParse(string?, IFormatProvider?, long)reference
byte CompareExchange(byte, byte, byte)reference- Note: Uses a lock rather than a hardware atomic, since no 8 bit interlocked primitive exists below net9. Correct against other Interlocked calls, but a concurrent plain write to the same location can be lost, where the BCL operation is indivisible.
sbyte CompareExchange(sbyte, sbyte, sbyte)reference- Note: Uses a lock rather than a hardware atomic, since no 8 bit interlocked primitive exists below net9. Correct against other Interlocked calls, but a concurrent plain write to the same location can be lost, where the BCL operation is indivisible.
short CompareExchange(short, short, short)reference- Note: Uses a lock rather than a hardware atomic, since no 16 bit interlocked primitive exists below net9. Correct against other Interlocked calls, but a concurrent plain write to the same location can be lost, where the BCL operation is indivisible.
ushort CompareExchange(ushort, ushort, ushort)reference- Note: Uses a lock rather than a hardware atomic, since no 16 bit interlocked primitive exists below net9. Correct against other Interlocked calls, but a concurrent plain write to the same location can be lost, where the BCL operation is indivisible.
byte Exchange(byte, byte)reference- Note: Uses a lock rather than a hardware atomic, since no 8 bit interlocked primitive exists below net9. Correct against other Interlocked calls, but a concurrent plain write to the same location can be lost, where the BCL operation is indivisible.
sbyte Exchange(sbyte, sbyte)reference- Note: Uses a lock rather than a hardware atomic, since no 8 bit interlocked primitive exists below net9. Correct against other Interlocked calls, but a concurrent plain write to the same location can be lost, where the BCL operation is indivisible.
short Exchange(short, short)reference- Note: Uses a lock rather than a hardware atomic, since no 16 bit interlocked primitive exists below net9. Correct against other Interlocked calls, but a concurrent plain write to the same location can be lost, where the BCL operation is indivisible.
ushort Exchange(ushort, ushort)reference- Note: Uses a lock rather than a hardware atomic, since no 16 bit interlocked primitive exists below net9. Correct against other Interlocked calls, but a concurrent plain write to the same location can be lost, where the BCL operation is indivisible.
T And<T>(T, T) where T : structreferenceT Or<T>(T, T) where T : structreference
nint BigMul(nint, nint, nint)referencenint Log10(nint)referencebool TryParse(ReadOnlySpan<byte>, IFormatProvider?, nint)referencebool TryParse(ReadOnlySpan<byte>, nint)referencebool TryParse(ReadOnlySpan<byte>, NumberStyles, IFormatProvider?, nint)referencebool TryParse(ReadOnlySpan<char>, IFormatProvider?, nint)referencebool TryParse(ReadOnlySpan<char>, nint)referencebool TryParse(ReadOnlySpan<char>, NumberStyles, IFormatProvider?, nint)referencebool TryParse(string?, IFormatProvider?, nint)referencebool TryParse(string?, nint)referencebool TryParse(string?, NumberStyles, IFormatProvider?, nint)reference
bool IsValid(ReadOnlySpan<char>)reference- Note: Copies the span to a string first, so this allocates where the BCL works straight from the span.
bool IsValidUtf8(ReadOnlySpan<byte>)reference- Note: Decodes the bytes to a string first, so this allocates where the BCL works straight from the UTF-8.
IPAddress Parse(ReadOnlySpan<char>)reference- Note: Copies the span to a string first, so this allocates where the BCL works straight from the span.
bool TryParse(ReadOnlySpan<byte>, IPAddress?)reference- Note: Decodes the bytes to a string first, so this allocates where the BCL works straight from the UTF-8.
- Note: The matching Parse(ReadOnlySpan) is not polyfilled, since it would collide with Guid.Parse(ReadOnlySpan); two static extension members with the same signature cannot coexist on one class.
bool TryParse(ReadOnlySpan<char>, IPAddress?)reference- Note: Copies the span to a string first, so this allocates where the BCL works straight from the span.
TValue GetValueOrDefault<TKey, TValue>(TKey, TValue) where TKey : notnullreferenceTValue? GetValueOrDefault<TKey, TValue>(TKey)reference
ReadOnlySet<T> AsReadOnly<T>()reference
int GetWeekOfYear(DateOnly)reference- Note: Only available on net6.0 and later, since DateOnly does not exist below that.
int GetYear(DateOnly)reference- Note: Only available on net6.0 and later, since DateOnly does not exist below that.
DateOnly ToDateOnly(int, int, DayOfWeek)reference- Note: Only available on net6.0 and later, since DateOnly does not exist below that.
void Deconstruct<TKey, TValue>(TKey, TValue)reference
void AddRange<T>(ReadOnlySpan<T>)referencevoid CopyTo<T>(Span<T>)referencevoid EnsureCapacity<T>(int)reference- Note: No-op on older targets; the BCL grows the backing storage.
- Note: Returns void on older targets; the BCL returns int (the new capacity).
void InsertRange<T>(int, ReadOnlySpan<T>)referencevoid TrimExcess<T>()- Note: No-op on older targets; the BCL shrinks the backing storage.
long BigMul(long, long, long)referenceulong BigMul(ulong, ulong, ulong)referencebyte Clamp(byte, byte, byte)referencedecimal Clamp(decimal, decimal, decimal)referencedouble Clamp(double, double, double)referencefloat Clamp(float, float, float)referenceint Clamp(int, int, int)referencelong Clamp(long, long, long)referencenint Clamp(nint, nint, nint)referencenuint Clamp(nuint, nuint, nuint)referencesbyte Clamp(sbyte, sbyte, sbyte)referenceshort Clamp(short, short, short)referenceuint Clamp(uint, uint, uint)referenceulong Clamp(ulong, ulong, ulong)referenceushort Clamp(ushort, ushort, ushort)reference
byte[] HashData(byte[])referenceint HashData(ReadOnlySpan<byte>, Span<byte>)referencebyte[] HashData(ReadOnlySpan<byte>)referenceint HashData(Stream, Span<byte>)referencebyte[] HashData(Stream)referenceValueTask<byte[]> HashDataAsync(Stream, CancellationToken)referenceValueTask<int> HashDataAsync(Stream, Memory<byte>, CancellationToken)referencebool TryHashData(ReadOnlySpan<byte>, Span<byte>, int)reference
NullabilityState GetNullability()NullabilityInfo GetNullabilityInfo()bool HasSameMetadataDefinitionAs(MemberInfo)referencebool IsNullable()
T CreateDelegate<T>(object?) where T : DelegatereferenceT CreateDelegate<T>() where T : Delegatereference
Requires
<PolyArgumentExceptions>true</PolyArgumentExceptions>in the consuming project.
bool IsAndroid()referencebool IsAndroidVersionAtLeast(int, int, int, int)referencebool IsBrowser()referencebool IsFreeBSD()referencebool IsFreeBSDVersionAtLeast(int, int, int, int)referencebool IsIOS()referencebool IsIOSVersionAtLeast(int, int, int)referencebool IsLinux()referencebool IsMacCatalyst()referencebool IsMacCatalystVersionAtLeast(int, int, int)referencebool IsMacOS()referencebool IsMacOSVersionAtLeast(int, int, int)referencebool IsOSPlatform(string)referencebool IsOSPlatformVersionAtLeast(string, int, int, int, int)referencebool IsTvOS()referencebool IsTvOSVersionAtLeast(int, int, int)referencebool IsWasi()referencebool IsWatchOS()referencebool IsWatchOSVersionAtLeast(int, int, int)referencebool IsWindows()referencebool IsWindowsVersionAtLeast(int, int, int, int)reference
bool TryAdd<TKey, TValue>(TKey, TValue, int) where TKey : notnullreferencebool TryGetValue<TKey, TValue>(TKey, TValue, int) where TKey : notnullreference
Task ForEachAsync<T>(IAsyncEnumerable<T>, CancellationToken, Func<T, CancellationToken, ValueTask>)referenceTask ForEachAsync<T>(IAsyncEnumerable<T>, Func<T, CancellationToken, ValueTask>)referenceTask ForEachAsync<T>(IAsyncEnumerable<T>, ParallelOptions, Func<T, CancellationToken, ValueTask>)referenceTask ForEachAsync<T>(IEnumerable<T>, CancellationToken, Func<T, CancellationToken, ValueTask>)referenceTask ForEachAsync<T>(IEnumerable<T>, Func<T, CancellationToken, ValueTask>)referenceTask ForEachAsync<T>(IEnumerable<T>, ParallelOptions, Func<T, CancellationToken, ValueTask>)reference
NullabilityState GetNullability()NullabilityInfo GetNullabilityInfo()bool IsNullable()
string Combine(ReadOnlySpan<string>)referencebool EndsInDirectorySeparator(ReadOnlySpan<char>)referencebool EndsInDirectorySeparator(string)referencebool Exists(string?)referenceReadOnlySpan<char> GetDirectoryName(ReadOnlySpan<char>)referenceReadOnlySpan<char> GetExtension(ReadOnlySpan<char>)referenceReadOnlySpan<char> GetFileName(ReadOnlySpan<char>)referenceReadOnlySpan<char> GetFileNameWithoutExtension(ReadOnlySpan<char>)referencestring GetRelativePath(string, string)referencebool HasExtension(ReadOnlySpan<char>)referencebool IsPathRooted(ReadOnlySpan<char>)referencestring Join(string?[])referenceReadOnlySpan<char> TrimEndingDirectorySeparator(ReadOnlySpan<char>)referencestring TrimEndingDirectorySeparator(string)reference
bool Remove<TElement, TPriority>(TElement, TElement, TPriority, IEqualityComparer<TElement>?)reference
void Kill(bool)reference- Note: On Unix the descendants are found by running ps before anything is killed, so a child started in between is missed. When ps is not available only the process itself is killed.
(byte[] StandardOutput, byte[] StandardError) ReadAllBytes(TimeSpan?)referenceTask<(byte[] StandardOutput, byte[] StandardError)> ReadAllBytesAsync(CancellationToken)referenceIEnumerable<ProcessOutputLine> ReadAllLines(TimeSpan?)reference- Note: The timeout is measured from the point enumeration starts, since the returned sequence is lazy.
IAsyncEnumerable<ProcessOutputLine> ReadAllLinesAsync(CancellationToken)reference(string StandardOutput, string StandardError) ReadAllText(TimeSpan?)referenceTask<(string StandardOutput, string StandardError)> ReadAllTextAsync(CancellationToken)referencebool Signal(PosixSignal)reference- Note: On Windows, as on net11, only SIGKILL is supported and is mapped to Process.Kill. All other signals throw PlatformNotSupportedException.
- Note: PosixSignal.SIGKILL was added in net11, so it cannot be named on earlier target frameworks. Its numeric value, (PosixSignal)(-11), is accepted.
bool TryWaitForExitStatus(TimeSpan, ProcessExitStatus?)reference- Note: On Unix the terminating signal is derived from the exit code, which is 128 plus the signal number, instead of from the raw wait status. A process that exits normally with, for example, code 143 is therefore reported as terminated by SIGTERM.
Task WaitForExitAsync(CancellationToken)referenceProcessExitStatus WaitForExitStatus()reference- Note: On Unix the terminating signal is derived from the exit code, which is 128 plus the signal number, instead of from the raw wait status. A process that exits normally with, for example, code 143 is therefore reported as terminated by SIGTERM.
Task<ProcessExitStatus> WaitForExitStatusAsync(CancellationToken)reference- Note: On Unix the terminating signal is derived from the exit code, which is 128 plus the signal number, instead of from the raw wait status. A process that exits normally with, for example, code 143 is therefore reported as terminated by SIGTERM.
ProcessExitStatus Run(ProcessStartInfo, TimeSpan?)referenceProcessExitStatus Run(string, IEnumerable<string>?, bool, TimeSpan?)reference- Note: When silent is true, standard output and error are suppressed by redirecting and discarding them (rather than binding to the null device as on net11); standard input remains connected.
ProcessTextOutput RunAndCaptureText(ProcessStartInfo, TimeSpan?)referenceProcessTextOutput RunAndCaptureText(string, IEnumerable<string>?, TimeSpan?)referenceTask<ProcessTextOutput> RunAndCaptureTextAsync(ProcessStartInfo, CancellationToken)referenceTask<ProcessTextOutput> RunAndCaptureTextAsync(string, IEnumerable<string>?, CancellationToken)referenceTask<ProcessExitStatus> RunAsync(ProcessStartInfo, CancellationToken)referenceTask<ProcessExitStatus> RunAsync(string, IEnumerable<string>?, bool, CancellationToken)reference- Note: When silent is true, standard output and error are suppressed by redirecting and discarding them (rather than binding to the null device as on net11); standard input remains connected.
int StartAndForget(ProcessStartInfo)referenceint StartAndForget(string, IEnumerable<string>?)referencebool TryGetProcessById(int, Process?)reference
Collection<string> ArgumentListreference
NullabilityState GetNullability()NullabilityInfo GetNullabilityInfo()bool IsNullable()
void EnsureCapacity<T>(int)reference- Note: No-op on older targets; the BCL grows the backing storage.
void TrimExcess<T>(int)reference- Note: No-op on older targets; the BCL shrinks the backing storage.
bool TryDequeue<T>(T)referencebool TryPeek<T>(T)reference
string GetHexString(int, bool)referencevoid GetHexString(Span<char>, bool)referenceT[] GetItems<T>(ReadOnlySpan<T>, int)referencevoid GetItems<T>(ReadOnlySpan<T>, Span<T>)referenceT[] GetItems<T>(T[], int)referencestring GetString(ReadOnlySpan<char>, int)referencevoid NextBytes(Span<byte>)referencelong NextInt64(long, long)referencelong NextInt64(long)referencelong NextInt64()referencefloat NextSingle()referencevoid Shuffle<T>(Span<T>)referencevoid Shuffle<T>(T[])referenceRandom Sharedreference
void Fill(Span<byte>)referencebyte[] GetBytes(int)referencestring GetHexString(int, bool)referencevoid GetHexString(Span<char>, bool)referenceint GetInt32(int, int)referenceint GetInt32(int)referenceT[] GetItems<T>(ReadOnlySpan<T>, int)referencevoid GetItems<T>(ReadOnlySpan<T>, Span<T>)referencestring GetString(ReadOnlySpan<char>, int)referencevoid Shuffle<T>(Span<T>)reference
bool ContainsAnyWhiteSpace()referencebool EndsWith(string, StringComparison)referencebool EndsWith(string)referenceSpanLineEnumerator EnumerateLines()referenceint GetNormalizedLength(NormalizationForm)referenceint IndexOfAnyExceptWhiteSpace()referenceint IndexOfAnyWhiteSpace()referencebool IsNormalized(NormalizationForm)referenceint LastIndexOfAnyExceptWhiteSpace()referenceint LastIndexOfAnyWhiteSpace()referencebool SequenceEqual(string)referenceint Split(Span<Range>, char, StringSplitOptions)referenceint Split(Span<Range>, ReadOnlySpan<char>, StringSplitOptions)referenceint SplitAny(Span<Range>, ReadOnlySpan<char>, StringSplitOptions)referenceint SplitAny(Span<Range>, ReadOnlySpan<string>, StringSplitOptions)referencebool StartsWith(string, StringComparison)referencebool StartsWith(string)referenceint ToLowerOrdinal(Span<char>)reference- Note: Derived from invariant casing, so the mapping follows the Unicode version of the running framework rather than the one net11 is built against.
int ToUpperOrdinal(Span<char>)reference- Note: Derived from invariant casing, so the mapping follows the Unicode version of the running framework rather than the one net11 is built against.
bool TryNormalize(Span<char>, int, NormalizationForm)reference
int CommonPrefixLength<T>(ReadOnlySpan<T>, IEqualityComparer<T>?)referenceint CommonPrefixLength<T>(ReadOnlySpan<T>)referencebool Contains<T>(T, IEqualityComparer<T>?)referencebool Contains<T>(T) where T : IEquatable<T>?referencebool ContainsAnyExcept<T>(ReadOnlySpan<T>) where T : IEquatable<T>?referencebool ContainsAnyExcept<T>(T, T, T) where T : IEquatable<T>?referencebool ContainsAnyExcept<T>(T, T) where T : IEquatable<T>?referencebool ContainsAnyExcept<T>(T) where T : IEquatable<T>?referencebool ContainsAnyExceptInRange<T>(T, T) where T : IComparable<T>referencebool ContainsAnyInRange<T>(T, T) where T : IComparable<T>referenceint CountAny<T>(ReadOnlySpan<T>, IEqualityComparer<T>?)referenceint CountAny<T>(ReadOnlySpan<T>) where T : IEquatable<T>?referenceint CountAny<T>(SearchValues<T>) where T : IEquatable<T>?referencebool EndsWith<T>(T) where T : IEquatable<T>?referenceint IndexOf<T>(T, IEqualityComparer<T>?)referenceint IndexOfAny<T>(ReadOnlySpan<T>, IEqualityComparer<T>?)referenceint IndexOfAnyExcept<T>(ReadOnlySpan<T>) where T : IEquatable<T>?referenceint IndexOfAnyExcept<T>(T, T, T) where T : IEquatable<T>?referenceint IndexOfAnyExcept<T>(T, T) where T : IEquatable<T>?referenceint IndexOfAnyExcept<T>(T) where T : IEquatable<T>?referenceint LastIndexOfAnyExcept<T>(ReadOnlySpan<T>) where T : IEquatable<T>?referenceint LastIndexOfAnyExcept<T>(T, T, T) where T : IEquatable<T>?referenceint LastIndexOfAnyExcept<T>(T, T) where T : IEquatable<T>?referenceint LastIndexOfAnyExcept<T>(T) where T : IEquatable<T>?referenceT? Max<T>(IComparer<T>?)referenceT? Max<T>()referenceT? Min<T>(IComparer<T>?)referenceT? Min<T>()referenceSpanSplitEnumerator<T> Split<T>(ReadOnlySpan<T>) where T : IEquatable<T>referenceSpanSplitEnumerator<T> Split<T>(T) where T : IEquatable<T>referenceSpanSplitEnumerator<T> SplitAny<T>(ReadOnlySpan<T>) where T : IEquatable<T>referenceSpanSplitEnumerator<T> SplitAny<T>(SearchValues<T>) where T : IEquatable<T>referencebool StartsWith<T>(T) where T : IEquatable<T>?reference
int Count(ReadOnlySpan<char>, int)referenceint Count(ReadOnlySpan<char>)referenceint Count(string)referenceValueMatchEnumerator EnumerateMatches(ReadOnlySpan<char>, int)referenceValueMatchEnumerator EnumerateMatches(ReadOnlySpan<char>)referenceValueSplitEnumerator EnumerateSplits(ReadOnlySpan<char>, int, int)referenceValueSplitEnumerator EnumerateSplits(ReadOnlySpan<char>, int)referenceValueSplitEnumerator EnumerateSplits(ReadOnlySpan<char>)referencebool IsMatch(ReadOnlySpan<char>, int)referencebool IsMatch(ReadOnlySpan<char>)referenceint Count(ReadOnlySpan<char>, string, RegexOptions, TimeSpan)referenceint Count(ReadOnlySpan<char>, string, RegexOptions)referenceint Count(ReadOnlySpan<char>, string)referenceint Count(string, string, RegexOptions, TimeSpan)referenceint Count(string, string, RegexOptions)referenceint Count(string, string)referenceValueMatchEnumerator EnumerateMatches(ReadOnlySpan<char>, string, RegexOptions, TimeSpan)referenceValueMatchEnumerator EnumerateMatches(ReadOnlySpan<char>, string, RegexOptions)referenceValueMatchEnumerator EnumerateMatches(ReadOnlySpan<char>, string)referenceValueSplitEnumerator EnumerateSplits(ReadOnlySpan<char>, string, RegexOptions, TimeSpan)referenceValueSplitEnumerator EnumerateSplits(ReadOnlySpan<char>, string, RegexOptions)referenceValueSplitEnumerator EnumerateSplits(ReadOnlySpan<char>, string)referencebool IsMatch(ReadOnlySpan<char>, string, RegexOptions, TimeSpan)referencebool IsMatch(ReadOnlySpan<char>, string, RegexOptions)referencebool IsMatch(ReadOnlySpan<char>, string)reference
bool Equals(Rune, StringComparison)referenceRune ToLowerOrdinal(Rune)reference- Note: Derived from invariant casing, so the mapping follows the Unicode version of the running framework rather than the one net11 is built against.
Rune ToUpperOrdinal(Rune)reference- Note: Derived from invariant casing, so the mapping follows the Unicode version of the running framework rather than the one net11 is built against.
bool IsMultithreadingSupportedreference
bool TryFormat(Span<byte>, int, ReadOnlySpan<char>, IFormatProvider?)referencebool TryFormat(Span<char>, int, ReadOnlySpan<char>, IFormatProvider?)referencesbyte Log10(sbyte)referencebool TryParse(ReadOnlySpan<byte>, IFormatProvider?, sbyte)referencebool TryParse(ReadOnlySpan<byte>, NumberStyles, IFormatProvider?, sbyte)referencebool TryParse(ReadOnlySpan<byte>, sbyte)referencebool TryParse(ReadOnlySpan<char>, IFormatProvider?, sbyte)referencebool TryParse(ReadOnlySpan<char>, NumberStyles, IFormatProvider?, sbyte)referencebool TryParse(ReadOnlySpan<char>, sbyte)referencebool TryParse(string?, IFormatProvider?, sbyte)reference
byte[] HashData(byte[])referenceint HashData(ReadOnlySpan<byte>, Span<byte>)referencebyte[] HashData(ReadOnlySpan<byte>)referenceint HashData(Stream, Span<byte>)referencebyte[] HashData(Stream)referenceValueTask<byte[]> HashDataAsync(Stream, CancellationToken)referenceValueTask<int> HashDataAsync(Stream, Memory<byte>, CancellationToken)referencebool TryHashData(ReadOnlySpan<byte>, Span<byte>, int)reference
byte[] HashData(byte[])referenceint HashData(ReadOnlySpan<byte>, Span<byte>)referencebyte[] HashData(ReadOnlySpan<byte>)referenceint HashData(Stream, Span<byte>)referencebyte[] HashData(Stream)referenceValueTask<byte[]> HashDataAsync(Stream, CancellationToken)referenceValueTask<int> HashDataAsync(Stream, Memory<byte>, CancellationToken)referencebool TryHashData(ReadOnlySpan<byte>, Span<byte>, int)reference
byte[] HashData(byte[])referenceint HashData(ReadOnlySpan<byte>, Span<byte>)referencebyte[] HashData(ReadOnlySpan<byte>)referenceint HashData(Stream, Span<byte>)referencebyte[] HashData(Stream)referenceValueTask<byte[]> HashDataAsync(Stream, CancellationToken)referenceValueTask<int> HashDataAsync(Stream, Memory<byte>, CancellationToken)referencebool TryHashData(ReadOnlySpan<byte>, Span<byte>, int)reference
byte[] HashData(byte[])referenceint HashData(ReadOnlySpan<byte>, Span<byte>)referencebyte[] HashData(ReadOnlySpan<byte>)referenceint HashData(Stream, Span<byte>)referencebyte[] HashData(Stream)referenceValueTask<byte[]> HashDataAsync(Stream, CancellationToken)referenceValueTask<int> HashDataAsync(Stream, Memory<byte>, CancellationToken)referencebool TryHashData(ReadOnlySpan<byte>, Span<byte>, int)reference
bool TryFormat(Span<byte>, int, ReadOnlySpan<char>, IFormatProvider?)referencebool TryFormat(Span<char>, int, ReadOnlySpan<char>, IFormatProvider?)referencebool TryParse(ReadOnlySpan<byte>, float)referencebool TryParse(ReadOnlySpan<byte>, IFormatProvider?, float)referencebool TryParse(ReadOnlySpan<byte>, NumberStyles, IFormatProvider?, float)referencebool TryParse(ReadOnlySpan<char>, float)referencebool TryParse(ReadOnlySpan<char>, IFormatProvider?, float)referencebool TryParse(ReadOnlySpan<char>, NumberStyles, IFormatProvider?, float)referencebool TryParse(string?, IFormatProvider?, float)reference
ValueTask ConnectAsync(EndPoint, CancellationToken)referenceValueTask DisconnectAsync(bool, CancellationToken)referenceValueTask<SocketReceiveFromResult> ReceiveFromAsync(Memory<byte>, SocketFlags, EndPoint, CancellationToken)referenceValueTask<int> SendToAsync(ReadOnlyMemory<byte>, SocketFlags, EndPoint, CancellationToken)reference
bool EndsWith(string)referenceSpanLineEnumerator EnumerateLines()referencebool SequenceEqual(string)referencebool StartsWith(string)referenceSpan<char> TrimEnd()referenceSpan<char> TrimStart()reference
int CommonPrefixLength<T>(ReadOnlySpan<T>, IEqualityComparer<T>?)referenceint CommonPrefixLength<T>(ReadOnlySpan<T>)referencebool Contains<T>(T) where T : IEquatable<T>?referencebool ContainsAnyExcept<T>(ReadOnlySpan<T>) where T : IEquatable<T>?referencebool ContainsAnyExcept<T>(T, T, T) where T : IEquatable<T>?referencebool ContainsAnyExcept<T>(T, T) where T : IEquatable<T>?referencebool ContainsAnyExcept<T>(T) where T : IEquatable<T>?referencebool ContainsAnyExceptInRange<T>(T, T) where T : IComparable<T>referencebool ContainsAnyInRange<T>(T, T) where T : IComparable<T>referenceint IndexOfAnyExcept<T>(ReadOnlySpan<T>) where T : IEquatable<T>?referenceint IndexOfAnyExcept<T>(T, T, T) where T : IEquatable<T>?referenceint IndexOfAnyExcept<T>(T, T) where T : IEquatable<T>?referenceint IndexOfAnyExcept<T>(T) where T : IEquatable<T>?referenceint LastIndexOfAnyExcept<T>(ReadOnlySpan<T>) where T : IEquatable<T>?referenceint LastIndexOfAnyExcept<T>(T, T, T) where T : IEquatable<T>?referenceint LastIndexOfAnyExcept<T>(T, T) where T : IEquatable<T>?referenceint LastIndexOfAnyExcept<T>(T) where T : IEquatable<T>?referencevoid Sort<T>(Comparison<T>)void Sort<T>()reference
void Sort<TKey, TValue, TComparer>(Span<TValue>, TComparer) where TComparer : IComparer<TKey>?referencevoid Sort<TKey, TValue>(Span<TValue>, Comparison<TKey>)referencevoid Sort<TKey, TValue>(Span<TValue>)reference
void EnsureCapacity<T>(int)reference- Note: No-op on older targets; the BCL grows the backing storage.
void TrimExcess<T>(int)reference- Note: No-op on older targets; the BCL shrinks the backing storage.
bool TryPeek<T>(T)referencebool TryPop<T>(T)reference
Task CopyToAsync(Stream, CancellationToken)referenceValueTask DisposeAsync()referenceint Read(Span<byte>)referenceValueTask<int> ReadAsync(Memory<byte>, CancellationToken)referenceint ReadAtLeast(Span<byte>, int, bool)referenceValueTask<int> ReadAtLeastAsync(Memory<byte>, int, bool, CancellationToken)referencevoid ReadExactly(byte[], int, int)referencevoid ReadExactly(Span<byte>)referenceValueTask ReadExactlyAsync(byte[], int, int, CancellationToken)referenceValueTask ReadExactlyAsync(Memory<byte>, CancellationToken)referencevoid Write(ReadOnlySpan<byte>)referenceValueTask WriteAsync(ReadOnlyMemory<byte>, CancellationToken)reference
bool Contains(char, StringComparison)referencebool Contains(char)referencebool Contains(string, StringComparison)referencevoid CopyTo(Span<char>)referencebool EndsWith(char, StringComparison)referencebool EndsWith(char)referenceint GetHashCode(StringComparison)referenceint IndexOf(char, int, int, StringComparison)referenceint IndexOf(char, int, StringComparison)referenceint IndexOf(char, StringComparison)referenceint LastIndexOf(char, int, int, StringComparison)referenceint LastIndexOf(char, int, StringComparison)referenceint LastIndexOf(char, StringComparison)referencestring ReplaceLineEndings(string)referencestring ReplaceLineEndings()referencestring[] Split(char, int, StringSplitOptions)referencestring[] Split(char, StringSplitOptions)referencestring[] Split(string, int, StringSplitOptions)referencestring[] Split(string, StringSplitOptions)referencebool StartsWith(char, StringComparison)referencebool StartsWith(char)referencestring ToLowerOrdinal()reference- Note: Derived from invariant casing, so the mapping follows the Unicode version of the running framework rather than the one net11 is built against.
string ToUpperOrdinal()reference- Note: Derived from invariant casing, so the mapping follows the Unicode version of the running framework rather than the one net11 is built against.
bool TryCopyTo(Span<char>)referencestring Concat(ReadOnlySpan<object?>)referencestring Concat(ReadOnlySpan<string?>)referencestring Create<TState>(int, TState, System.Buffers.SpanAction<char, TState>)referenceint GetHashCode(ReadOnlySpan<char>, StringComparison)referenceint GetHashCode(ReadOnlySpan<char>)referencestring Join(char, object?[])referencestring Join(char, ReadOnlySpan<object?>)referencestring Join(char, ReadOnlySpan<string?>)referencestring Join(char, string?[], int, int)referencestring Join(char, string?[])referencestring Join(string?, ReadOnlySpan<object?>)referencestring Join(string?, ReadOnlySpan<string?>)referencestring Join<T>(char, IEnumerable<T>)reference
StringBuilder Append(StringBuilder, AppendInterpolatedStringHandler)referenceStringBuilder Append(StringBuilder, IFormatProvider?, AppendInterpolatedStringHandler)referenceStringBuilder Append(StringBuilder, IFormatProvider?, StringBuilder.AppendInterpolatedStringHandler)referenceStringBuilder Append(ReadOnlySpan<char>)referenceStringBuilder Append(StringBuilder?, int, int)referenceStringBuilder Append(StringBuilder, StringBuilder.AppendInterpolatedStringHandler)referenceStringBuilder AppendFormat(IFormatProvider?, string, ReadOnlySpan<object?>)reference- Note: Copies the span to an array and uses the array overload, so this allocates where the BCL formats straight from the span.
- Note: Only reached when the argument is already a ReadOnlySpan. A loose argument list binds to the BCL array overload, exactly as it does without Polyfill.
StringBuilder AppendFormat(string, ReadOnlySpan<object?>)reference- Note: Copies the span to an array and uses the array overload, so this allocates where the BCL formats straight from the span.
- Note: Only reached when the argument is already a ReadOnlySpan. A loose argument list binds to the BCL array overload, exactly as it does without Polyfill.
StringBuilder AppendJoin(char, ReadOnlySpan<object?>)reference- Note: Copies the span to an array and uses the array overload, so this allocates where the BCL joins straight from the span.
- Note: Only reached when the argument is already a ReadOnlySpan. A loose argument list binds to the array overload, exactly as it does without Polyfill.
StringBuilder AppendJoin(char, ReadOnlySpan<string?>)reference- Note: Copies the span to an array and uses the array overload, so this allocates where the BCL joins straight from the span.
- Note: Only reached when the argument is already a ReadOnlySpan. A loose argument list binds to the array overload, exactly as it does without Polyfill.
StringBuilder AppendJoin(string?, ReadOnlySpan<object?>)reference- Note: Copies the span to an array and uses the array overload, so this allocates where the BCL joins straight from the span.
- Note: Only reached when the argument is already a ReadOnlySpan. A loose argument list binds to the array overload, exactly as it does without Polyfill.
StringBuilder AppendJoin(string?, ReadOnlySpan<string?>)reference- Note: Copies the span to an array and uses the array overload, so this allocates where the BCL joins straight from the span.
- Note: Only reached when the argument is already a ReadOnlySpan. A loose argument list binds to the array overload, exactly as it does without Polyfill.
StringBuilder AppendJoin(char, object?[])referenceStringBuilder AppendJoin(char, string?[])referenceStringBuilder AppendJoin(string?, object?[])referenceStringBuilder AppendJoin(string?, string?[])referenceStringBuilder AppendJoin<T>(char, IEnumerable<T>)referenceStringBuilder AppendJoin<T>(string?, IEnumerable<T>)referenceStringBuilder AppendLine(StringBuilder, AppendInterpolatedStringHandler)referenceStringBuilder AppendLine(StringBuilder, IFormatProvider?, AppendInterpolatedStringHandler)referenceStringBuilder AppendLine(StringBuilder, IFormatProvider?, StringBuilder.AppendInterpolatedStringHandler)referenceStringBuilder AppendLine(StringBuilder, StringBuilder.AppendInterpolatedStringHandler)referencevoid CopyTo(int, Span<char>, int)referenceStringBuilderRuneEnumerator EnumerateRunes()reference- Note: Enumerates over a snapshot of the content taken when enumeration starts, so changes made to the StringBuilder while enumerating are not observed.
bool Equals(ReadOnlySpan<char>)referenceChunkEnumerator GetChunks()referenceRune GetRuneAt(int)referenceStringBuilder Insert(int, ReadOnlySpan<char>)referenceStringBuilder Replace(ReadOnlySpan<char>, ReadOnlySpan<char>, int, int)referenceStringBuilder Replace(ReadOnlySpan<char>, ReadOnlySpan<char>)referenceStringBuilder Replace(Rune, Rune, int, int)referenceStringBuilder Replace(Rune, Rune)referencebool TryGetRuneAt(int, Rune)referenceStringBuilder MoveChunks(StringBuilder)reference
ConfiguredTaskAwaitable ConfigureAwait(ConfigureAwaitOptions)referenceTask WaitAsync(CancellationToken)referenceTask WaitAsync(TimeSpan, CancellationToken)referenceTask WaitAsync(TimeSpan)referenceTask WhenAll(ReadOnlySpan<Task>)referenceTask<TResult[]> WhenAll<TResult>(ReadOnlySpan<Task<TResult>>)referenceTask<Task> WhenAny(ReadOnlySpan<Task>)referenceTask<Task<TResult>> WhenAny<TResult>(ReadOnlySpan<Task<TResult>>)reference
ConfiguredTaskAwaitable<TResult> ConfigureAwait<TResult>(ConfigureAwaitOptions)referenceTask<TResult> WaitAsync<TResult>(CancellationToken)referenceTask<TResult> WaitAsync<TResult>(TimeSpan, CancellationToken)referenceTask<TResult> WaitAsync<TResult>(TimeSpan)reference
void SetFromTask(Task)reference- Note: When the supplied task is canceled, the canceling token is recovered by observing that task, which costs a throw and catch that the BCL avoids.
bool TrySetFromTask(Task)reference- Note: When the supplied task is canceled, the canceling token is recovered by observing that task, which costs a throw and catch that the BCL avoids.
void SetCanceled<T>(CancellationToken)referencevoid SetFromTask<T>(Task<T>)reference- Note: When the supplied task is canceled, the canceling token is recovered by observing that task, which costs a throw and catch that the BCL avoids.
bool TrySetFromTask<T>(Task<T>)reference- Note: When the supplied task is canceled, the canceling token is recovered by observing that task, which costs a throw and catch that the BCL avoids.
IAsyncEnumerable<Task> WhenEach(IEnumerable<Task>, CancellationToken)referenceIAsyncEnumerable<Task<TResult>> WhenEach<TResult>(IEnumerable<Task<TResult>>, CancellationToken)reference
ValueTask ConnectAsync(IPAddress, int, CancellationToken)referenceValueTask ConnectAsync(IPAddress[], int, CancellationToken)referenceValueTask ConnectAsync(IPEndPoint, CancellationToken)referenceValueTask ConnectAsync(string, int, CancellationToken)reference
ValueTask<int> ReadAsync(Memory<char>, CancellationToken)referenceTask<string> ReadLineAsync(CancellationToken)referenceTask<string> ReadToEndAsync(CancellationToken)reference
Task FlushAsync(CancellationToken)referencevoid Write(ReadOnlySpan<char>)referencevoid Write(StringBuilder?)referenceTask WriteAsync(ReadOnlyMemory<char>, CancellationToken)referenceTask WriteAsync(string?, CancellationToken)referenceTask WriteAsync(StringBuilder?, CancellationToken)referencevoid WriteLine(ReadOnlySpan<char>)referenceTask WriteLineAsync(CancellationToken)referenceTask WriteLineAsync(ReadOnlyMemory<char>, CancellationToken)referenceTask WriteLineAsync(string?, CancellationToken)referenceTextWriter CreateBroadcasting(TextWriter[])reference
void Deconstruct(int, int, int, int, int)referencevoid Deconstruct(int, int, int, int)referencevoid Deconstruct(int, int, int)referencevoid Deconstruct(int, int)referencebool TryFormat(Span<byte>, int, ReadOnlySpan<char>, IFormatProvider?)referencebool TryFormat(Span<char>, int, ReadOnlySpan<char>, IFormatProvider?)reference
bool TryFormat(Span<byte>, int, ReadOnlySpan<char>, IFormatProvider?)referencebool TryFormat(Span<char>, int, ReadOnlySpan<char>, IFormatProvider?)referenceTimeSpan FromDays(int, int, long, long, long, long)referenceTimeSpan FromHours(int, long, long, long, long)referenceTimeSpan FromMicroseconds(long)referenceTimeSpan FromMilliseconds(long, long)referenceTimeSpan FromMinutes(long, long, long, long)referenceTimeSpan FromSeconds(long, long, long)referenceint HoursPerDayreference- Note: A property rather than a const, since extension members cannot declare constants, so it cannot be used in a constant expression.
int Microsecondsreferencelong MicrosecondsPerDayreference- Note: A property rather than a const, since extension members cannot declare constants, so it cannot be used in a constant expression.
long MicrosecondsPerHourreference- Note: A property rather than a const, since extension members cannot declare constants, so it cannot be used in a constant expression.
long MicrosecondsPerMillisecondreference- Note: A property rather than a const, since extension members cannot declare constants, so it cannot be used in a constant expression.
long MicrosecondsPerMinutereference- Note: A property rather than a const, since extension members cannot declare constants, so it cannot be used in a constant expression.
long MicrosecondsPerSecondreference- Note: A property rather than a const, since extension members cannot declare constants, so it cannot be used in a constant expression.
long MillisecondsPerDayreference- Note: A property rather than a const, since extension members cannot declare constants, so it cannot be used in a constant expression.
long MillisecondsPerHourreference- Note: A property rather than a const, since extension members cannot declare constants, so it cannot be used in a constant expression.
long MillisecondsPerMinutereference- Note: A property rather than a const, since extension members cannot declare constants, so it cannot be used in a constant expression.
long MillisecondsPerSecondreference- Note: A property rather than a const, since extension members cannot declare constants, so it cannot be used in a constant expression.
long MinutesPerDayreference- Note: A property rather than a const, since extension members cannot declare constants, so it cannot be used in a constant expression.
long MinutesPerHourreference- Note: A property rather than a const, since extension members cannot declare constants, so it cannot be used in a constant expression.
int Nanosecondsreferencelong SecondsPerDayreference- Note: A property rather than a const, since extension members cannot declare constants, so it cannot be used in a constant expression.
long SecondsPerHourreference- Note: A property rather than a const, since extension members cannot declare constants, so it cannot be used in a constant expression.
long SecondsPerMinutereference- Note: A property rather than a const, since extension members cannot declare constants, so it cannot be used in a constant expression.
MemberInfo GetMemberWithSameMetadataDefinitionAs(MemberInfo)referenceMethodInfo? GetMethod(string, int, BindingFlags, Binder?, Type[], ParameterModifier[]?)referenceMethodInfo? GetMethod(string, int, BindingFlags, Type[])referencebool IsAssignableFrom<T>()bool IsAssignableTo(Type?)referencebool IsAssignableTo<T>()Type? GetNullableUnderlyingType()referencebool IsGenericMethodParameterreference
ValueTask<UdpReceiveResult> ReceiveAsync(CancellationToken)reference- Note: Cancellation abandons the wait, not the underlying receive, which stays in flight. Its datagram is returned by the next
ReceiveAsync(CancellationToken)call, so after a cancellation do not mix in the otherReceiveoverloads.
- Note: Cancellation abandons the wait, not the underlying receive, which stays in flight. Its datagram is returned by the next
int Send(ReadOnlySpan<byte>, IPEndPoint?)referenceint Send(ReadOnlySpan<byte>, string?, int)referenceint Send(ReadOnlySpan<byte>)referenceValueTask<int> SendAsync(ReadOnlyMemory<byte>, CancellationToken)referenceValueTask<int> SendAsync(ReadOnlyMemory<byte>, IPEndPoint?, CancellationToken)referenceValueTask<int> SendAsync(ReadOnlyMemory<byte>, string?, int, CancellationToken)reference
bool TryFormat(Span<byte>, int, ReadOnlySpan<char>, IFormatProvider?)referencebool TryFormat(Span<char>, int, ReadOnlySpan<char>, IFormatProvider?)referenceushort Log10(ushort)referencebool TryParse(ReadOnlySpan<byte>, IFormatProvider?, ushort)referencebool TryParse(ReadOnlySpan<byte>, NumberStyles, IFormatProvider?, ushort)referencebool TryParse(ReadOnlySpan<byte>, ushort)referencebool TryParse(ReadOnlySpan<char>, IFormatProvider?, ushort)referencebool TryParse(ReadOnlySpan<char>, NumberStyles, IFormatProvider?, ushort)referencebool TryParse(ReadOnlySpan<char>, ushort)referencebool TryParse(string?, IFormatProvider?, ushort)reference
bool TryFormat(Span<byte>, int, ReadOnlySpan<char>, IFormatProvider?)referencebool TryFormat(Span<char>, int, ReadOnlySpan<char>, IFormatProvider?)referenceulong BigMul(uint, uint)reference- Note: The identical Math.BigMul overload is not polyfilled, since C# emits both static extension members onto the same class and they would collide.
uint Log10(uint)referencebool TryParse(ReadOnlySpan<byte>, IFormatProvider?, uint)referencebool TryParse(ReadOnlySpan<byte>, NumberStyles, IFormatProvider?, uint)referencebool TryParse(ReadOnlySpan<byte>, uint)referencebool TryParse(ReadOnlySpan<char>, IFormatProvider?, uint)referencebool TryParse(ReadOnlySpan<char>, NumberStyles, IFormatProvider?, uint)referencebool TryParse(ReadOnlySpan<char>, uint)referencebool TryParse(string?, IFormatProvider?, uint)reference
bool TryFormat(Span<byte>, int, ReadOnlySpan<char>, IFormatProvider?)referencebool TryFormat(Span<char>, int, ReadOnlySpan<char>, IFormatProvider?)referenceUInt128 BigMul(ulong, ulong)reference- Note: The identical Math.BigMul overload is not polyfilled, since C# emits both static extension members onto the same class and they would collide.
- Note: Only available on net7.0 and later, since UInt128 does not exist below that.
ulong Log10(ulong)referencebool TryParse(ReadOnlySpan<byte>, IFormatProvider?, ulong)referencebool TryParse(ReadOnlySpan<byte>, NumberStyles, IFormatProvider?, ulong)referencebool TryParse(ReadOnlySpan<byte>, ulong)referencebool TryParse(ReadOnlySpan<char>, IFormatProvider?, ulong)referencebool TryParse(ReadOnlySpan<char>, NumberStyles, IFormatProvider?, ulong)referencebool TryParse(ReadOnlySpan<char>, ulong)referencebool TryParse(string?, IFormatProvider?, ulong)reference
nuint BigMul(nuint, nuint, nuint)referencenuint Log10(nuint)referencebool TryParse(ReadOnlySpan<byte>, IFormatProvider?, nuint)referencebool TryParse(ReadOnlySpan<byte>, nuint)referencebool TryParse(ReadOnlySpan<byte>, NumberStyles, IFormatProvider?, nuint)referencebool TryParse(ReadOnlySpan<char>, IFormatProvider?, nuint)referencebool TryParse(ReadOnlySpan<char>, nuint)referencebool TryParse(ReadOnlySpan<char>, NumberStyles, IFormatProvider?, nuint)referencebool TryParse(string?, IFormatProvider?, nuint)referencebool TryParse(string?, nuint)referencebool TryParse(string?, NumberStyles, IFormatProvider?, nuint)reference
string EscapeDataString(ReadOnlySpan<char>)reference- Note: Copies the span to a string first, so this allocates where the BCL escapes straight from the span.
bool TryEscapeDataString(ReadOnlySpan<char>, Span<char>, int)reference- Note: Escapes through an intermediate string, so this allocates where the BCL writes straight to the destination.
bool TryUnescapeDataString(ReadOnlySpan<char>, Span<char>, int)reference- Note: Unescapes through an intermediate string, so this allocates where the BCL writes straight to the destination.
string UnescapeDataString(ReadOnlySpan<char>)reference- Note: Copies the span to a string first, so this allocates where the BCL unescapes straight from the span.
string UriSchemeDatareference
int IndexOfInvalidSubsequence(ReadOnlySpan<byte>)reference
ValueTask CompletedTaskreference
void ReadBarrier()reference- Note: Implemented as a full fence, since no one way barrier exists below net10. Correct but stronger than required, and unlike the BCL it costs a processor instruction on x86 and x64.
void WriteBarrier()reference- Note: Implemented as a full fence, since no one way barrier exists below net10. Correct but stronger than required, and unlike the BCL it costs a processor instruction on x86 and x64.
Task SaveAsync(Stream, SaveOptions, CancellationToken)referenceTask SaveAsync(TextWriter, SaveOptions, CancellationToken)referenceTask SaveAsync(XmlWriter, CancellationToken)referenceTask<XDocument> LoadAsync(Stream, LoadOptions, CancellationToken)referenceTask<XDocument> LoadAsync(TextReader, LoadOptions, CancellationToken)referenceTask<XDocument> LoadAsync(XmlReader, LoadOptions, CancellationToken)reference
Task SaveAsync(Stream, SaveOptions, CancellationToken)referenceTask SaveAsync(TextWriter, SaveOptions, CancellationToken)referenceTask SaveAsync(XmlWriter, CancellationToken)referenceTask<XElement> LoadAsync(Stream, LoadOptions, CancellationToken)referenceTask<XElement> LoadAsync(TextReader, LoadOptions, CancellationToken)referenceTask<XElement> LoadAsync(XmlReader, LoadOptions, CancellationToken)reference
Task WriteToAsync(XmlWriter, CancellationToken)referenceTask<XNode> ReadFromAsync(XmlReader, CancellationToken)reference
Task<ZipArchiveEntry> CreateEntryFromFileAsync(string, string, CancellationToken)referenceTask<ZipArchiveEntry> CreateEntryFromFileAsync(string, string, CompressionLevel, CancellationToken)referencevoid ExtractToDirectory(string, bool)referenceTask ExtractToDirectoryAsync(string, bool, CancellationToken)referenceTask ExtractToDirectoryAsync(string, CancellationToken)reference
Task ExtractToFileAsync(string, bool, CancellationToken)referenceTask ExtractToFileAsync(string, CancellationToken)referenceStream Open(FileAccess)referenceTask<Stream> OpenAsync(CancellationToken)referenceValueTask<Stream> OpenAsync(FileAccess, CancellationToken)referenceint ExternalAttributesreference
Task CreateFromDirectoryAsync(string, string, CancellationToken)referenceTask CreateFromDirectoryAsync(string, string, CompressionLevel, bool, CancellationToken)referenceTask CreateFromDirectoryAsync(string, string, CompressionLevel, bool, Encoding, CancellationToken)referenceTask ExtractToDirectoryAsync(string, string, bool, CancellationToken)referenceTask ExtractToDirectoryAsync(string, string, CancellationToken)referenceTask ExtractToDirectoryAsync(string, string, Encoding, bool, CancellationToken)referenceTask ExtractToDirectoryAsync(string, string, Encoding, CancellationToken)referenceTask<ZipArchive> OpenAsync(string, ZipArchiveMode, CancellationToken)referenceTask<ZipArchive> OpenAsync(string, ZipArchiveMode, Encoding?, CancellationToken)referenceTask<ZipArchive> OpenReadAsync(string, CancellationToken)reference
Requires
<PolyEnsure>true</PolyEnsure>in the consuming project.
void DirectoryExists(string)T Equal<T>(T, T)void FileExists(string)void NoDuplicates<T>(IEnumerable<T>)string? NotEmpty(string?)Memory<T>? NotEmpty<T>(Memory<T>?)Memory<T> NotEmpty<T>(Memory<T>)ReadOnlyMemory<T>? NotEmpty<T>(ReadOnlyMemory<T>?)ReadOnlyMemory<T> NotEmpty<T>(ReadOnlyMemory<T>)ReadOnlySpan<T> NotEmpty<T>(ReadOnlySpan<T>)Span<T> NotEmpty<T>(Span<T>)T? NotEmpty<T>(T?) where T : IEnumerableT NotEqual<T>(T, T)nint NotGreaterThan(nint, nint)T NotGreaterThan<T>(T, T) where T : IComparable<T>nint NotGreaterThanOrEqual(nint, nint)T NotGreaterThanOrEqual<T>(T, T) where T : IComparable<T>nint NotLessThan(nint, nint)T NotLessThan<T>(T, T) where T : IComparable<T>nint NotLessThanOrEqual(nint, nint)T NotLessThanOrEqual<T>(T, T) where T : IComparable<T>nint NotNegative(nint)T NotNegative<T>(T) where T : struct, IComparable<T>nint NotNegativeOrZero(nint)T NotNegativeOrZero<T>(T) where T : struct, IComparable<T>string NotNull(string?)T NotNull<T>(T?) where T : classMemory<char> NotNullOrEmpty(Memory<char>?)ReadOnlyMemory<char> NotNullOrEmpty(ReadOnlyMemory<char>?)string NotNullOrEmpty(string?)T NotNullOrEmpty<T>(T?) where T : IEnumerableMemory<char> NotNullOrWhiteSpace(Memory<char>?)ReadOnlyMemory<char> NotNullOrWhiteSpace(ReadOnlyMemory<char>?)string NotNullOrWhiteSpace(string?)Memory<char>? NotWhiteSpace(Memory<char>?)ReadOnlyMemory<char>? NotWhiteSpace(ReadOnlyMemory<char>?)ReadOnlySpan<char> NotWhiteSpace(ReadOnlySpan<char>)Span<char> NotWhiteSpace(Span<char>)string? NotWhiteSpace(string?)nint NotZero(nint)T NotZero<T>(T) where T : struct, IEquatable<T>
void Enter()Scope EnterScope()void Exit()bool TryEnter()bool TryEnter(int)bool TryEnter(TimeSpan)
KeyValuePair<TKey, TValue> Create<TKey, TValue>(TKey, TValue)reference
Span<T> AsSpan<T>(List<T>?)reference- Note: Reads the list's private backing array via reflection on this target.
void SetCount<T>(List<T>, int)reference- Note: When growing, new elements are default(T); the BCL exposes uninitialized data.
bool IsPow2(int)referencebool IsPow2(long)referencebool IsPow2(nint)referencebool IsPow2(nuint)referencebool IsPow2(uint)referencebool IsPow2(ulong)reference
bool FixedTimeEquals(ReadOnlySpan<byte>, byte)reference- Note: Best-effort constant-time comparison; a managed loop cannot offer the same guarantees as the BCL intrinsic.
bool FixedTimeEquals(ReadOnlySpan<byte>, ReadOnlySpan<byte>)reference- Note: Best-effort constant-time comparison; a managed loop cannot offer the same guarantees as the BCL intrinsic.
byte[] HashData(HashAlgorithmName, byte[])referenceint HashData(HashAlgorithmName, ReadOnlySpan<byte>, Span<byte>)referencebyte[] HashData(HashAlgorithmName, ReadOnlySpan<byte>)referenceint HashData(HashAlgorithmName, Stream, Span<byte>)referencebyte[] HashData(HashAlgorithmName, Stream)referenceValueTask<byte[]> HashDataAsync(HashAlgorithmName, Stream, CancellationToken)referenceValueTask<int> HashDataAsync(HashAlgorithmName, Stream, Memory<byte>, CancellationToken)referencebyte[] HmacData(HashAlgorithmName, byte[], byte[])referencebyte[] HmacData(HashAlgorithmName, byte[], Stream)referenceint HmacData(HashAlgorithmName, ReadOnlySpan<byte>, ReadOnlySpan<byte>, Span<byte>)referencebyte[] HmacData(HashAlgorithmName, ReadOnlySpan<byte>, ReadOnlySpan<byte>)referenceint HmacData(HashAlgorithmName, ReadOnlySpan<byte>, Stream, Span<byte>)referencebyte[] HmacData(HashAlgorithmName, ReadOnlySpan<byte>, Stream)referenceValueTask<byte[]> HmacDataAsync(HashAlgorithmName, byte[], Stream, CancellationToken)referenceValueTask<byte[]> HmacDataAsync(HashAlgorithmName, ReadOnlyMemory<byte>, Stream, CancellationToken)referenceValueTask<int> HmacDataAsync(HashAlgorithmName, ReadOnlyMemory<byte>, Stream, Memory<byte>, CancellationToken)referencebool TryHashData(HashAlgorithmName, ReadOnlySpan<byte>, Span<byte>, int)referencebool TryHmacData(HashAlgorithmName, ReadOnlySpan<byte>, ReadOnlySpan<byte>, Span<byte>, int)referencebool VerifyHmac(HashAlgorithmName, byte[], byte[], byte[])referencebool VerifyHmac(HashAlgorithmName, byte[], Stream, byte[])referencebool VerifyHmac(HashAlgorithmName, ReadOnlySpan<byte>, ReadOnlySpan<byte>, ReadOnlySpan<byte>)referencebool VerifyHmac(HashAlgorithmName, ReadOnlySpan<byte>, Stream, ReadOnlySpan<byte>)referenceValueTask<bool> VerifyHmacAsync(HashAlgorithmName, byte[], Stream, byte[], CancellationToken)referenceValueTask<bool> VerifyHmacAsync(HashAlgorithmName, ReadOnlyMemory<byte>, Stream, ReadOnlyMemory<byte>, CancellationToken)referencevoid ZeroMemory(Span<byte>)reference- Note: Best-effort zeroing; unlike the BCL intrinsic the JIT may elide the clear if the buffer is not observed afterwards.