[corlib] Parse datetime string using culture calendar. Fixes #18052
[mono.git] / mcs / class / corlib / System.Reflection / ObfuscationAttribute.cs
index 801aa4b060b6a863803a35887fdfd409d204977e..4ce4a57ad35386a5a70f893967bc86e4531403d7 100644 (file)
 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 //
 
-#if NET_2_0 || BOOTSTRAP_NET_2_0
-
 using System;
+using System.Runtime.InteropServices;
 
 namespace System.Reflection
 {
-       [AttributeUsage (AttributeTargets.Assembly|AttributeTargets.Class|AttributeTargets.Struct|AttributeTargets.Enum|AttributeTargets.Method|AttributeTargets.Property|AttributeTargets.Field|AttributeTargets.Event|AttributeTargets.Interface|AttributeTargets.Parameter|AttributeTargets.Delegate)]
+       [ComVisible (true)]
+       [AttributeUsage (AttributeTargets.Assembly|AttributeTargets.Class|AttributeTargets.Struct|AttributeTargets.Enum|AttributeTargets.Method|AttributeTargets.Property|AttributeTargets.Field|AttributeTargets.Event|AttributeTargets.Interface|AttributeTargets.Parameter|AttributeTargets.Delegate, AllowMultiple=true, Inherited=false)]
        public sealed class ObfuscationAttribute : Attribute {
 
                private bool exclude;
                private bool strip;
+               private bool applyToMembers;
                private string feature;
 
                public ObfuscationAttribute ()
                {
                        exclude = true;
                        strip = true;
+                       applyToMembers = true;
                        feature = "all";
                }
                
@@ -57,7 +59,7 @@ namespace System.Reflection
                        }
                }
 
-               public bool Strip {
+               public bool StripAfterObfuscation {
                        get {
                                return strip;
                        }
@@ -66,6 +68,15 @@ namespace System.Reflection
                        }
                }
 
+               public bool ApplyToMembers {
+                       get {
+                               return applyToMembers;
+                       }
+                       set {
+                               applyToMembers = value;
+                       }
+               }
+
                public string Feature {
                        get {
                                return feature;
@@ -77,5 +88,4 @@ namespace System.Reflection
        }
 }
 
-#endif