System.Runtime.Fx
namespace System.Runtime
{
internal static class Fx
{
public abstract class ExceptionHandler
{
public abstract bool HandleException(Exception exception);
protected ExceptionHandler();
}
public static class Tag
{
public enum CacheAttrition
{
None,
ElementOnTimer,
ElementOnGC,
ElementOnCallback,
FullPurgeOnTimer,
FullPurgeOnEachAccess,
PartialPurgeOnTimer,
PartialPurgeOnEachAccess
}
public enum ThrottleAction
{
Reject,
Pause
}
public enum ThrottleMetric
{
Count,
Rate,
Other
}
public enum Location
{
InProcess,
OutOfProcess,
LocalSystem,
LocalOrRemoteSystem,
RemoteSystem
}
public enum SynchronizationKind
{
LockStatement,
MonitorWait,
MonitorExplicit,
InterlockedNoSpin,
InterlockedWithSpin,
FromFieldType
}
public enum BlocksUsing
{
MonitorEnter = 0,
MonitorWait = 1,
ManualResetEvent = 2,
AutoResetEvent = 3,
AsyncResult = 4,
IAsyncResult = 5,
PInvoke = 6,
InputQueue = 7,
ThreadNeutralSemaphore = 8,
PrivatePrimitive = 9,
OtherInternalPrimitive = 10,
OtherFrameworkPrimitive = 11,
OtherInterop = 12,
Other = 13,
NonBlocking = 14
}
public static class Strings
{
}
public sealed class FriendAccessAllowedAttribute : Attribute
{
public string AssemblyName { get; set; }
public FriendAccessAllowedAttribute(string assemblyName);
}
public static class Throws
{
public sealed class TimeoutAttribute : ThrowsAttribute
{
public TimeoutAttribute();
public TimeoutAttribute(string diagnosis);
}
}
public sealed class CacheAttribute : Attribute
{
public Type ElementType { get; }
public CacheAttrition CacheAttrition { get; }
public string Scope { get; set; }
public string SizeLimit { get; set; }
public string Timeout { get; set; }
public CacheAttribute(Type elementType, CacheAttrition cacheAttrition);
}
public sealed class QueueAttribute : Attribute
{
public Type ElementType { get; }
public string Scope { get; set; }
public string SizeLimit { get; set; }
public bool StaleElementsRemovedImmediately { get; set; }
public bool EnqueueThrowsIfFull { get; set; }
public QueueAttribute(Type elementType);
}
public sealed class ThrottleAttribute : Attribute
{
public ThrottleAction ThrottleAction { get; }
public ThrottleMetric ThrottleMetric { get; }
public string Limit { get; }
public string Scope { get; set; }
public ThrottleAttribute(ThrottleAction throttleAction, ThrottleMetric throttleMetric, string limit);
}
public sealed class ExternalResourceAttribute : Attribute
{
public Location Location { get; }
public string Description { get; }
public ExternalResourceAttribute(Location location, string description);
}
public sealed class SynchronizationObjectAttribute : Attribute
{
public bool Blocking { get; set; }
public string Scope { get; set; }
public SynchronizationKind Kind { get; set; }
public SynchronizationObjectAttribute();
}
public sealed class SynchronizationPrimitiveAttribute : Attribute
{
public BlocksUsing BlocksUsing { get; }
public bool SupportsAsync { get; set; }
public bool Spins { get; set; }
public string ReleaseMethod { get; set; }
public SynchronizationPrimitiveAttribute(BlocksUsing blocksUsing);
}
public sealed class BlockingAttribute : Attribute
{
public string CancelMethod { get; set; }
public Type CancelDeclaringType { get; set; }
public string Conditional { get; set; }
public BlockingAttribute();
}
public sealed class GuaranteeNonBlockingAttribute : Attribute
{
public GuaranteeNonBlockingAttribute();
}
public sealed class NonThrowingAttribute : Attribute
{
public NonThrowingAttribute();
}
public class ThrowsAttribute : Attribute
{
public Type ExceptionType { get; }
public string Diagnosis { get; }
public ThrowsAttribute(Type exceptionType, string diagnosis);
}
public sealed class InheritThrowsAttribute : Attribute
{
public Type FromDeclaringType { get; set; }
public string From { get; set; }
public InheritThrowsAttribute();
}
public sealed class KnownXamlExternalAttribute : Attribute
{
public KnownXamlExternalAttribute();
}
public sealed class XamlVisibleAttribute : Attribute
{
public bool Visible { get; }
public XamlVisibleAttribute();
public XamlVisibleAttribute(bool visible);
}
public sealed class SecurityNoteAttribute : Attribute
{
public string Critical { get; set; }
public string Safe { get; set; }
public string Miscellaneous { get; set; }
public SecurityNoteAttribute();
}
}
public static ExceptionHandler AsynchronousThreadExceptionHandler { get; set; }
public static void Assert(bool condition, string description);
public static void Assert(string description);
public static void AssertAndThrow(bool condition, string description);
public static Exception AssertAndThrow(string description);
public static void AssertAndThrowFatal(bool condition, string description);
public static Exception AssertAndThrowFatal(string description);
public static void AssertAndFailFast(bool condition, string description);
public static Exception AssertAndFailFast(string description);
public static bool IsFatal(Exception exception);
public static AsyncCallback ThunkCallback(AsyncCallback callback);
public static Action<T1> ThunkCallback<T1>(Action<T1> callback);
public static IOCompletionCallback ThunkCallback(IOCompletionCallback callback);
public static Guid CreateGuid(string guidString);
public static bool TryCreateGuid(string guidString, out Guid result);
public static byte[] AllocateByteArray(int size);
public static char[] AllocateCharArray(int size);
}
}