// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.
+using System.Diagnostics;
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+using System.Runtime.Serialization;
+
namespace System
{
- using System;
- using System.Reflection;
- using System.Runtime;
- using System.Threading;
- using System.Runtime.Serialization;
- using System.Runtime.InteropServices;
- using System.Runtime.CompilerServices;
- using System.Runtime.Versioning;
- using System.Diagnostics;
-
- [ClassInterface(ClassInterfaceType.AutoDual)]
- [System.Runtime.InteropServices.ComVisible(true)]
+ [ClassInterface(ClassInterfaceType.None)]
+ [ComVisible(true)]
public abstract class Delegate : ICloneable, ISerializable
{
// _target is the object we will invoke on
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.
-using System;
+using System.Diagnostics;
using System.Reflection;
+using System.Runtime.InteropServices;
using System.Runtime.Serialization;
-using System.Diagnostics;
-using System.Reflection.Emit;
+
using Internal.Runtime.CompilerServices;
namespace System
{
- [System.Runtime.InteropServices.ComVisible(true)]
+ [ClassInterface(ClassInterfaceType.None)]
+ [ComVisible(true)]
public abstract class MulticastDelegate : Delegate
{
// This is set under 3 circumstances
internal bool InvocationListLogicallyNull()
{
- return (_invocationList == null) || (_invocationList is LoaderAllocator) || (_invocationList is DynamicResolver);
+ return (_invocationList == null) || (_invocationList is LoaderAllocator) || (_invocationList is System.Reflection.Emit.DynamicResolver);
}
public override void GetObjectData(SerializationInfo info, StreamingContext context)
// is the super class for all other CLR objects and provide a set of methods and low level
// services to subclasses. These services include object synchronization and support for clone
// operations.
- //
- //This class contains no data and does not need to be serializable
+ //
[Serializable]
- [ClassInterface(ClassInterfaceType.AutoDual)]
- [System.Runtime.InteropServices.ComVisible(true)]
- [System.Runtime.CompilerServices.TypeForwardedFrom("mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089")]
+ [ClassInterface(ClassInterfaceType.AutoDispatch)]
+ [ComVisible(true)]
+ [TypeForwardedFrom("mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089")]
public class Object
{
// Creates a new instance of an Object.
// The name "__Canon" will never been seen by users but it will appear a lot in debugger stack traces
// involving generics so it is kept deliberately short as to avoid being a nuisance.
- [ClassInterface(ClassInterfaceType.AutoDual)]
- [System.Runtime.InteropServices.ComVisible(true)]
+ [ClassInterface(ClassInterfaceType.None)]
+ [ComVisible(true)]
internal class __Canon
{
}