3 // Permission is hereby granted, free of charge, to any person obtaining
4 // a copy of this software and associated documentation files (the
5 // "Software"), to deal in the Software without restriction, including
6 // without limitation the rights to use, copy, modify, merge, publish,
7 // distribute, sublicense, and/or sell copies of the Software, and to
8 // permit persons to whom the Software is furnished to do so, subject to
9 // the following conditions:
11 // The above copyright notice and this permission notice shall be
12 // included in all copies or substantial portions of the Software.
14 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
22 using Mono.Xml.Schema;
\r
24 namespace System.Xml.Schema
\r
26 internal struct QNameValueType
\r
28 XmlQualifiedName value;
\r
30 public QNameValueType (XmlQualifiedName value)
\r
35 public XmlQualifiedName Value {
\r
36 get { return value; }
\r
39 public static bool operator == (QNameValueType v1, QNameValueType v2)
\r
41 return v1.Value == v2.Value;
\r
44 public static bool operator != (QNameValueType v1, QNameValueType v2)
\r
46 return v1.Value != v2.Value;
\r
49 public override bool Equals (object obj)
\r
51 if (obj is QNameValueType)
\r
52 return (QNameValueType) obj == this;
\r
57 public override int GetHashCode ()
\r
59 return value.GetHashCode ();
\r
63 internal struct StringValueType
\r
67 public StringValueType (string value)
\r
72 public string Value {
\r
73 get { return value; }
\r
76 public static bool operator == (StringValueType v1, StringValueType v2)
\r
78 return v1.Value == v2.Value;
\r
81 public static bool operator != (StringValueType v1, StringValueType v2)
\r
83 return v1.Value != v2.Value;
\r
86 public override bool Equals (object obj)
\r
88 if (obj is StringValueType)
\r
89 return (StringValueType) obj == this;
\r
94 public override int GetHashCode ()
\r
96 return value.GetHashCode ();
\r
100 internal struct UriValueType
\r
102 XmlSchemaUri value;
\r
104 public UriValueType (XmlSchemaUri value)
\r
106 this.value = value;
\r
109 public XmlSchemaUri Value {
\r
110 get { return value; }
\r
113 public static bool operator == (UriValueType v1, UriValueType v2)
\r
115 return v1.Value == v2.Value;
\r
118 public static bool operator != (UriValueType v1, UriValueType v2)
\r
120 return v1.Value != v2.Value;
\r
123 public override bool Equals (object obj)
\r
125 if (obj is UriValueType)
\r
126 return (UriValueType) obj == this;
\r
131 public override int GetHashCode ()
\r
133 return value.GetHashCode ();
\r
136 public override string ToString ()
\r
138 return value.ToString ();
\r
142 internal struct StringArrayValueType
\r
146 public StringArrayValueType (string [] value)
\r
148 this.value = value;
\r
151 public string [] Value {
\r
152 get { return value; }
\r
155 public static bool operator == (StringArrayValueType v1, StringArrayValueType v2)
\r
157 return v1.Value == v2.Value;
\r
160 public static bool operator != (StringArrayValueType v1, StringArrayValueType v2)
\r
162 return v1.Value != v2.Value;
\r
165 public override bool Equals (object obj)
\r
167 if (obj is StringArrayValueType)
\r
168 return (StringArrayValueType) obj == this;
\r
173 public override int GetHashCode ()
\r
175 return value.GetHashCode ();
\r