[IntroduceInterface(typeof(IImmutable), OverrideAction = InterfaceOverrideAction.Ignore, LinesOfCodeAvoided = 0)]
[Metric("UsedFeatures", "PostSharp.Patterns.Threading.Immutable")]
[Serializer(typeof(ImmutableAttribute.Serializer))]
public sealed class ImmutableAttribute : ReadOnlyThreadAwareAttribute, ITypeLevelAspect, ITypeLevelAspectBuildSemantics, IAspectBuildSemantics, IValidableAnnotation, ICloneAwareAspect, IInstanceScopedAspect, IAspectProvider, IService, IAdviceProvider, IAspect, IQueryInterface, IConcurrencyController, IImmutable, IThreadAware