# System ``` diff namespace System { public static class Activator { + public static ObjectHandle CreateInstance(string assemblyName, string typeName); + public static ObjectHandle CreateInstance(string assemblyName, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes); + public static ObjectHandle CreateInstance(string assemblyName, string typeName, object[] activationAttributes); + public static ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName); + public static ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes); + public static ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName, object[] activationAttributes); } - public class AppDomain : MarshalByRefObject { + public sealed class AppDomain : MarshalByRefObject { + public PermissionSet PermissionSet { get; } + public AppDomainSetup SetupInformation { get; } + public ObjectHandle CreateInstance(string assemblyName, string typeName); + public ObjectHandle CreateInstance(string assemblyName, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes); + public ObjectHandle CreateInstance(string assemblyName, string typeName, object[] activationAttributes); + public object CreateInstanceAndUnwrap(string assemblyName, string typeName); + public object CreateInstanceAndUnwrap(string assemblyName, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes); + public object CreateInstanceAndUnwrap(string assemblyName, string typeName, object[] activationAttributes); + public ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName); + public ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes); + public ObjectHandle CreateInstanceFrom(string assemblyFile, string typeName, object[] activationAttributes); + public object CreateInstanceFromAndUnwrap(string assemblyFile, string typeName); + public object CreateInstanceFromAndUnwrap(string assemblyFile, string typeName, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes); + public object CreateInstanceFromAndUnwrap(string assemblyFile, string typeName, object[] activationAttributes); } + public sealed class AppDomainSetup { + public string ApplicationBase { get; } + public string TargetFrameworkName { get; } + } + public ref struct ArgIterator { + public ArgIterator(RuntimeArgumentHandle arglist); + public unsafe ArgIterator(RuntimeArgumentHandle arglist, void* ptr); + public void End(); + public override bool Equals(object o); + public override int GetHashCode(); + public TypedReference GetNextArg(); + public TypedReference GetNextArg(RuntimeTypeHandle rth); + public RuntimeTypeHandle GetNextArgType(); + public int GetRemainingCount(); + } - public struct Boolean : IComparable, IComparable, IConvertible, IEquatable + public readonly struct Boolean : IComparable, IComparable, IConvertible, IEquatable - public struct Byte : IComparable, IComparable, IConvertible, IEquatable, IFormattable + public readonly struct Byte : IComparable, IComparable, IConvertible, IEquatable, IFormattable - public struct Char : IComparable, IComparable, IConvertible, IEquatable + public readonly struct Char : IComparable, IComparable, IConvertible, IEquatable - public struct DateTimeOffset : IComparable, IComparable, IDeserializationCallback, IEquatable, IFormattable, ISerializable + public readonly struct DateTimeOffset : IComparable, IComparable, IDeserializationCallback, IEquatable, IFormattable, ISerializable - public struct Decimal : IComparable, IComparable, IConvertible, IDeserializationCallback, IEquatable, IFormattable + public readonly struct Decimal : IComparable, IComparable, IConvertible, IDeserializationCallback, IEquatable, IFormattable - public struct Double : IComparable, IComparable, IConvertible, IEquatable, IFormattable + public readonly struct Double : IComparable, IComparable, IConvertible, IEquatable, IFormattable public static class Environment { + public static long TickCount64 { get; } } public class Exception : ISerializable { - public int HResult { get; protected set; } + public int HResult { get; set; } } public abstract class FormattableString : IFormattable { + public static string CurrentCulture(FormattableString formattable); } public static class GC { + public static GCMemoryInfo GetGCMemoryInfo(); + public static long GetTotalAllocatedBytes(bool precise = false); } + public readonly struct GCMemoryInfo { + public long FragmentedBytes { get; } + public long HeapSizeBytes { get; } + public long HighMemoryLoadThresholdBytes { get; } + public long MemoryLoadBytes { get; } + public long TotalAvailableMemoryBytes { get; } + } + public interface IAsyncDisposable { + ValueTask DisposeAsync(); + } + public readonly struct Index : IEquatable { + public Index(int value, bool fromEnd = false); + public static Index End { get; } + public bool IsFromEnd { get; } + public static Index Start { get; } + public int Value { get; } + public bool Equals(Index other); + public override bool Equals(object value); + public static Index FromEnd(int value); + public static Index FromStart(int value); + public override int GetHashCode(); + public int GetOffset(int length); + public static implicit operator Index (int value); + public override string ToString(); + } - public struct Int16 : IComparable, IComparable, IConvertible, IEquatable, IFormattable + public readonly struct Int16 : IComparable, IComparable, IConvertible, IEquatable, IFormattable - public struct Int32 : IComparable, IComparable, IConvertible, IEquatable, IFormattable + public readonly struct Int32 : IComparable, IComparable, IConvertible, IEquatable, IFormattable - public struct Int64 : IComparable, IComparable, IConvertible, IEquatable, IFormattable + public readonly struct Int64 : IComparable, IComparable, IConvertible, IEquatable, IFormattable - public struct IntPtr : IEquatable, ISerializable + public readonly struct IntPtr : IEquatable, ISerializable public static class Math { + public static double BitDecrement(double x); + public static double BitIncrement(double x); + public static double CopySign(double x, double y); + public static double FusedMultiplyAdd(double x, double y, double z); + public static int ILogB(double x); + public static double Log2(double x); + public static double MaxMagnitude(double x, double y); + public static double MinMagnitude(double x, double y); + public static double ScaleB(double x, int n); } public static class MathF { + public static float BitDecrement(float x); + public static float BitIncrement(float x); + public static float CopySign(float x, float y); + public static float FusedMultiplyAdd(float x, float y, float z); + public static int ILogB(float x); + public static float Log2(float x); + public static float MaxMagnitude(float x, float y); + public static float MinMagnitude(float x, float y); + public static float ScaleB(float x, int n); } - public readonly struct Memory + public readonly struct Memory : IEquatable> public static class MemoryExtensions { + public static ReadOnlyMemory AsMemory(this string text, Index startIndex); + public static ReadOnlyMemory AsMemory(this string text, Range range); + public static Memory AsMemory(this T[] array, Index startIndex); + public static Memory AsMemory(this T[] array, Range range); + public static Span AsSpan(this ArraySegment segment, Index startIndex); + public static Span AsSpan(this ArraySegment segment, Range range); + public static Span AsSpan(this T[] array, Index startIndex); + public static Span AsSpan(this T[] array, Range range); + public static bool Contains(this ReadOnlySpan span, T value) where T : IEquatable; + public static bool Contains(this Span span, T value) where T : IEquatable; + public static SpanRuneEnumerator EnumerateRunes(this ReadOnlySpan span); + public static SpanRuneEnumerator EnumerateRunes(this Span span); + public static int LastIndexOf(this ReadOnlySpan span, ReadOnlySpan value, StringComparison comparisonType); + public static Memory Trim(this Memory memory); + public static ReadOnlyMemory Trim(this ReadOnlyMemory memory); + public static Span Trim(this Span span); + public static Memory Trim(this Memory memory, ReadOnlySpan trimElements) where T : IEquatable; + public static Memory Trim(this Memory memory, T trimElement) where T : IEquatable; + public static ReadOnlyMemory Trim(this ReadOnlyMemory memory, ReadOnlySpan trimElements) where T : IEquatable; + public static ReadOnlyMemory Trim(this ReadOnlyMemory memory, T trimElement) where T : IEquatable; + public static ReadOnlySpan Trim(this ReadOnlySpan span, ReadOnlySpan trimElements) where T : IEquatable; + public static ReadOnlySpan Trim(this ReadOnlySpan span, T trimElement) where T : IEquatable; + public static Span Trim(this Span span, ReadOnlySpan trimElements) where T : IEquatable; + public static Span Trim(this Span span, T trimElement) where T : IEquatable; + public static Memory TrimEnd(this Memory memory); + public static ReadOnlyMemory TrimEnd(this ReadOnlyMemory memory); + public static Span TrimEnd(this Span span); + public static Memory TrimEnd(this Memory memory, ReadOnlySpan trimElements) where T : IEquatable; + public static Memory TrimEnd(this Memory memory, T trimElement) where T : IEquatable; + public static ReadOnlyMemory TrimEnd(this ReadOnlyMemory memory, ReadOnlySpan trimElements) where T : IEquatable; + public static ReadOnlyMemory TrimEnd(this ReadOnlyMemory memory, T trimElement) where T : IEquatable; + public static ReadOnlySpan TrimEnd(this ReadOnlySpan span, ReadOnlySpan trimElements) where T : IEquatable; + public static ReadOnlySpan TrimEnd(this ReadOnlySpan span, T trimElement) where T : IEquatable; + public static Span TrimEnd(this Span span, ReadOnlySpan trimElements) where T : IEquatable; + public static Span TrimEnd(this Span span, T trimElement) where T : IEquatable; + public static Memory TrimStart(this Memory memory); + public static ReadOnlyMemory TrimStart(this ReadOnlyMemory memory); + public static Span TrimStart(this Span span); + public static Memory TrimStart(this Memory memory, ReadOnlySpan trimElements) where T : IEquatable; + public static Memory TrimStart(this Memory memory, T trimElement) where T : IEquatable; + public static ReadOnlyMemory TrimStart(this ReadOnlyMemory memory, ReadOnlySpan trimElements) where T : IEquatable; + public static ReadOnlyMemory TrimStart(this ReadOnlyMemory memory, T trimElement) where T : IEquatable; + public static ReadOnlySpan TrimStart(this ReadOnlySpan span, ReadOnlySpan trimElements) where T : IEquatable; + public static ReadOnlySpan TrimStart(this ReadOnlySpan span, T trimElement) where T : IEquatable; + public static Span TrimStart(this Span span, ReadOnlySpan trimElements) where T : IEquatable; + public static Span TrimStart(this Span span, T trimElement) where T : IEquatable; } public enum MidpointRounding { + ToNegativeInfinity = 3, + ToPositiveInfinity = 4, + ToZero = 2, } + public readonly struct Range : IEquatable { + public Range(Index start, Index end); + public static Range All { get; } + public Index End { get; } + public Index Start { get; } + public static Range EndAt(Index end); + public override bool Equals(object value); + public bool Equals(Range other); + public override int GetHashCode(); + public (int Offset, int Length) GetOffsetAndLength(int length); + public static Range StartAt(Index start); + public override string ToString(); + } - public readonly struct ReadOnlyMemory + public readonly struct ReadOnlyMemory : IEquatable> - public struct SByte : IComparable, IComparable, IConvertible, IEquatable, IFormattable + public readonly struct SByte : IComparable, IComparable, IConvertible, IEquatable, IFormattable - public struct Single : IComparable, IComparable, IConvertible, IEquatable, IFormattable + public readonly struct Single : IComparable, IComparable, IConvertible, IEquatable, IFormattable public sealed class String : ICloneable, IComparable, IComparable, IConvertible, IEnumerable, IEnumerable, IEquatable { + public static String Concat(ReadOnlySpan str0, ReadOnlySpan str1); + public static String Concat(ReadOnlySpan str0, ReadOnlySpan str1, ReadOnlySpan str2); + public static String Concat(ReadOnlySpan str0, ReadOnlySpan str1, ReadOnlySpan str2, ReadOnlySpan str3); + public StringRuneEnumerator EnumerateRunes(); + public static int GetHashCode(ReadOnlySpan value); + public static int GetHashCode(ReadOnlySpan value, StringComparison comparisonType); + public ref readonly char GetPinnableReference(); } public abstract class StringComparer : IComparer, IComparer, IEqualityComparer, IEqualityComparer { - bool System.Collections.IEqualityComparer.Equals(object x, object y); - int System.Collections.IEqualityComparer.GetHashCode(object obj); } - public struct TimeSpan : IComparable, IComparable, IEquatable, IFormattable + public readonly struct TimeSpan : IComparable, IComparable, IEquatable, IFormattable public abstract class Type : MemberInfo, IReflect { + public static Type MakeGenericSignatureType(Type genericTypeDefinition, params Type[] typeArguments); } - public struct UInt16 : IComparable, IComparable, IConvertible, IEquatable, IFormattable + public readonly struct UInt16 : IComparable, IComparable, IConvertible, IEquatable, IFormattable - public struct UInt32 : IComparable, IComparable, IConvertible, IEquatable, IFormattable + public readonly struct UInt32 : IComparable, IComparable, IConvertible, IEquatable, IFormattable - public struct UInt64 : IComparable, IComparable, IConvertible, IEquatable, IFormattable + public readonly struct UInt64 : IComparable, IComparable, IConvertible, IEquatable, IFormattable - public struct UIntPtr : IEquatable, ISerializable + public readonly struct UIntPtr : IEquatable, ISerializable } ```