AttributeUsageAttribute.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / ndp / clr / src / BCL / System / AttributeUsageAttribute.cs / 1 / AttributeUsageAttribute.cs

                            // ==++== 
//
//   Copyright (c) Microsoft Corporation.  All rights reserved.
//
// ==--== 
/*============================================================
** 
** Class:  AttributeUsageAttribute 
**
** 
** Purpose: The class denotes how to specify the usage of an attribute
**
**
===========================================================*/ 
namespace System {
 
    using System.Reflection; 
   /* By default, attributes are inherited and multiple attributes are not allowed */
    [AttributeUsage(AttributeTargets.Class, Inherited = true),Serializable()] 
[System.Runtime.InteropServices.ComVisible(true)]
    public sealed class AttributeUsageAttribute : Attribute
   {
        internal AttributeTargets m_attributeTarget = AttributeTargets.All; // Defaults to all 
        internal bool m_allowMultiple = false; // Defaults to false
        internal bool m_inherited = true; // Defaults to true 
 
      internal static AttributeUsageAttribute Default = new AttributeUsageAttribute(AttributeTargets.All);
 
       //Constructors
        public AttributeUsageAttribute(AttributeTargets validOn) {
            m_attributeTarget = validOn;
        } 
       internal AttributeUsageAttribute(AttributeTargets validOn, bool allowMultiple, bool inherited) {
           m_attributeTarget = validOn; 
           m_allowMultiple = allowMultiple; 
           m_inherited = inherited;
       } 

 
       //Properties
        public AttributeTargets ValidOn 
      {
           get{ return m_attributeTarget; } 
        } 

        public bool AllowMultiple 
       {
            get { return m_allowMultiple; }
            set { m_allowMultiple = value; }
        } 

        public bool Inherited 
      { 
            get { return m_inherited; }
            set { m_inherited = value; } 
        }
    }
}

// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.


                        

Link Menu

Network programming in C#, Network Programming in VB.NET, Network Programming in .NET
This book is available now!
Buy at Amazon US or
Buy at Amazon UK