Mono Class Library: System Namespace

System.CLSCompliantAttribute Class

Indicates whether the target of the current attribute complies with the Common Language Specification (CLS). [Edit]

See Also: CLSCompliantAttribute Members

System.Object
     System.Attribute
          System.CLSCompliantAttribute

[System.AttributeUsage(System.AttributeTargets.All)]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class CLSCompliantAttribute : Attribute

Thread Safety

All public static members of this type are safe for multithreaded operations. No instance members are guaranteed to be thread safe.

Remarks

If no CLSCompliantAttribute is associated with a given assembly, that assembly is assumed not to be CLS-compliant.

A type is assumed to be CLS-compliant if and only if its enclosing type (for nested types) or assembly (for top-level types) is CLS-compliant. Other members (methods, fields, properties and events) are CLS-compliant if and only if the type in which they are defined is CLS-compliant.

Note:

The CLS is a subset of CLI features that is supported by a broad set of compliant languages and tools. CLS-compliant languages and tools are guaranteed to interoperate with other CLS-compliant languages and tools.

Because the CLS defines the rules for language interoperability, its rules apply only to "externally visible" items. The CLS assumes that language interoperability is important only across the assembly boundary - that is, within a single assembly there are no restrictions as to the programming techniques that are used. Thus, the CLS rules apply only to items that are visible outside of their defining assembly and have public, family, or family-or-assembly accessibility.

For more information on CLS compliance, see Partition I of the CLI Specification.

This attribute can be applied to any valid attribute target. For a complete list of valid targets, see AttributeTargets.

[Edit]

Requirements

Namespace: System
Assembly: mscorlib (in mscorlib.dll)
Assembly Versions: 1.0.5000.0, 2.0.0.0