summaryrefslogtreecommitdiff
path: root/Runtime/Export/Internal/DefaultValueAttribute.cs
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2019-08-14 22:50:43 +0800
committerchai <chaifix@163.com>2019-08-14 22:50:43 +0800
commit15740faf9fe9fe4be08965098bbf2947e096aeeb (patch)
treea730ec236656cc8cab5b13f088adfaed6bb218fb /Runtime/Export/Internal/DefaultValueAttribute.cs
+Unity Runtime codeHEADmaster
Diffstat (limited to 'Runtime/Export/Internal/DefaultValueAttribute.cs')
-rw-r--r--Runtime/Export/Internal/DefaultValueAttribute.cs43
1 files changed, 43 insertions, 0 deletions
diff --git a/Runtime/Export/Internal/DefaultValueAttribute.cs b/Runtime/Export/Internal/DefaultValueAttribute.cs
new file mode 100644
index 0000000..a664aa4
--- /dev/null
+++ b/Runtime/Export/Internal/DefaultValueAttribute.cs
@@ -0,0 +1,43 @@
+using System;
+
+namespace UnityEngine.Internal
+{
+ /// <summary>
+ /// Adds default value information for optional parameters
+ /// </summary>
+ [Serializable]
+ [AttributeUsage(AttributeTargets.Parameter | AttributeTargets.GenericParameter)]
+ public class DefaultValueAttribute : Attribute
+ {
+ private object DefaultValue;
+
+ public DefaultValueAttribute (string value)
+ {
+ DefaultValue = value;
+ }
+
+ public object Value {
+ get { return DefaultValue; }
+ }
+
+ public override bool Equals (object obj)
+ {
+ DefaultValueAttribute dva = (obj as DefaultValueAttribute);
+ if (dva == null)
+ return false;
+
+ if (DefaultValue == null)
+ return (dva.Value == null);
+
+ return DefaultValue.Equals (dva.Value);
+ }
+
+ public override int GetHashCode()
+ {
+ if (DefaultValue == null)
+ return base.GetHashCode ();
+ return DefaultValue.GetHashCode();
+ }
+
+ }
+}