# System.Reflection ``` diff namespace System.Reflection { public abstract class Assembly : ICustomAttributeProvider, ISerializable { + public virtual bool IsCollectible { get; } } public class CustomAttributeData { - public Type AttributeType { get; } + public virtual Type AttributeType { get; } } - public struct CustomAttributeNamedArgument + public readonly struct CustomAttributeNamedArgument - public struct CustomAttributeTypedArgument + public readonly struct CustomAttributeTypedArgument + public interface ICustomTypeProvider { + Type GetCustomType(); + } public abstract class MemberInfo : ICustomAttributeProvider { + public virtual bool IsCollectible { get; } } public enum MethodImplAttributes { + AggressiveOptimization = 512, } public sealed class ReflectionTypeLoadException : SystemException, ISerializable { + public override string Message { get; } + public override string ToString(); } public class TypeDelegator : TypeInfo { + public override bool IsCollectible { get; } } public abstract class TypeInfo : Type, IReflectableType { + protected TypeInfo(); } } ```