System.XML: Partial implementation of XmlSchemaDatatype::ChangeType
[mono.git] / mcs / class / System.XML / System.Xml.Schema / XmlSchemaObjectTable.cs
old mode 100755 (executable)
new mode 100644 (file)
index ddf6bff..9794b60
-// Author: Dwivedi, Ajay kumar\r
-//            Adwiv@Yahoo.com\r
-using System;\r
-using System.Collections;\r
-using System.Collections.Specialized;\r
-using System.Xml;\r
-\r
-namespace System.Xml.Schema\r
-{\r
-       /// <summary>\r
-       /// Summary description for XmlSchemaObjectTable.\r
-       /// </summary>\r
-       public class XmlSchemaObjectTable\r
-       {\r
-//             private Hashtable table;\r
-               private HybridDictionary table;\r
-\r
-               internal XmlSchemaObjectTable ()\r
-               {\r
-//                     table = new Hashtable(); \r
-                       table = new HybridDictionary (); \r
-               }\r
-               public int Count \r
-               {\r
-                       get{ return table.Count; }\r
-               }\r
-               public XmlSchemaObject this [XmlQualifiedName name] \r
-               {\r
-                       get{ return (XmlSchemaObject) table [name]; }\r
-               }\r
-               public ICollection Names \r
-               {\r
-                       get{ return table.Keys; }\r
-               }\r
-               public ICollection Values \r
-               {\r
-                       get{ return table.Values; }\r
-               }\r
-\r
-               public bool Contains (XmlQualifiedName name)\r
-               {\r
-                       return table.Contains (name);\r
-               }\r
-               public IDictionaryEnumerator GetEnumerator ()\r
-               {\r
-                       return new XmlSchemaObjectTableEnumerator (this);\r
-               }\r
-\r
-               internal void Add (XmlQualifiedName name, XmlSchemaObject value)\r
-               {\r
-                       table [name] = value;\r
-               }\r
-\r
-               internal void Clear ()\r
-               {\r
-                       table.Clear ();\r
-               }\r
-\r
-               internal void Set (XmlQualifiedName name, XmlSchemaObject value)\r
-               {\r
-                       table [name] = value;\r
-               }\r
-\r
-               internal class XmlSchemaObjectTableEnumerator : IDictionaryEnumerator\r
-               {\r
-                       private IDictionaryEnumerator xenum;\r
-                       IEnumerable tmp;\r
-                       XmlSchemaObjectTable table;\r
-                       internal XmlSchemaObjectTableEnumerator (XmlSchemaObjectTable table)\r
-                       {\r
-                               this.table = table;\r
-                               tmp = (IEnumerable) table.table;\r
-                               xenum = (IDictionaryEnumerator) tmp.GetEnumerator ();\r
-                       }\r
-                       // Properties\r
-                       public XmlSchemaObject Current { \r
-                               get {\r
-                                       return (XmlSchemaObject) xenum.Value; \r
-                               }\r
-                       }\r
-                       public DictionaryEntry Entry {\r
-                               get { return xenum.Entry; }\r
-                       }\r
-                       public XmlQualifiedName Key {\r
-                               get { return (XmlQualifiedName) xenum.Key; }\r
-                       }\r
-                       public XmlSchemaObject Value {\r
-                               get { return (XmlSchemaObject) xenum.Value; }\r
-                       }\r
-                       // Methods\r
-                       public bool MoveNext()\r
-                       {\r
-                               return xenum.MoveNext();\r
-                       }\r
-\r
-                       //Explicit Interface implementation\r
-                       bool IEnumerator.MoveNext()\r
-                       {\r
-                               return xenum.MoveNext();\r
-                       }\r
-                       void IEnumerator.Reset()\r
-                       {\r
-                               xenum.Reset();\r
-                       }\r
-                       object IEnumerator.Current\r
-                       {\r
-                               get { return xenum.Entry; }\r
-                       }\r
-                       DictionaryEntry IDictionaryEnumerator.Entry {\r
-                               get { return xenum.Entry; }\r
-                       }\r
-                       object IDictionaryEnumerator.Key {\r
-                               get { return (XmlQualifiedName) xenum.Key; }\r
-                       }\r
-                       object IDictionaryEnumerator.Value {\r
-                               get { return (XmlSchemaObject) xenum.Value; }\r
-                       }\r
-               }\r
-       }\r
-}\r
+// Author: Dwivedi, Ajay kumar
+//            Adwiv@Yahoo.com
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+// 
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+// 
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+using System;
+using System.Collections;
+using System.Collections.Specialized;
+using System.Xml;
+
+namespace System.Xml.Schema
+{
+       /// <summary>
+       /// Summary description for XmlSchemaObjectTable.
+       /// </summary>
+       public class XmlSchemaObjectTable
+       {
+               private ListDictionary table;
+
+               internal XmlSchemaObjectTable ()
+               {
+                       table = new ListDictionary (); 
+               }
+               public int Count 
+               {
+                       get{ return table.Count; }
+               }
+               public XmlSchemaObject this [XmlQualifiedName name] 
+               {
+                       get{ return (XmlSchemaObject) table [name]; }
+               }
+               public ICollection Names 
+               {
+                       get{ return table.Keys; }
+               }
+               public ICollection Values 
+               {
+                       get{ return table.Values; }
+               }
+
+               public bool Contains (XmlQualifiedName name)
+               {
+                       return table.Contains (name);
+               }
+               public IDictionaryEnumerator GetEnumerator ()
+               {
+                       return new XmlSchemaObjectTableEnumerator (this);
+               }
+
+               internal void Add (XmlQualifiedName name, XmlSchemaObject value)
+               {
+                       table [name] = value;
+               }
+
+               internal void Clear ()
+               {
+                       table.Clear ();
+               }
+
+               internal void Set (XmlQualifiedName name, XmlSchemaObject value)
+               {
+                       table [name] = value;
+               }
+
+               internal class XmlSchemaObjectTableEnumerator : IDictionaryEnumerator
+               {
+                       private IDictionaryEnumerator xenum;
+                       IEnumerable tmp;
+                       internal XmlSchemaObjectTableEnumerator (XmlSchemaObjectTable table)
+                       {
+                               tmp = (IEnumerable) table.table;
+                               xenum = (IDictionaryEnumerator) tmp.GetEnumerator ();
+                       }
+                       // Properties
+                       public XmlSchemaObject Current { 
+                               get {
+                                       return (XmlSchemaObject) xenum.Value; 
+                               }
+                       }
+                       public DictionaryEntry Entry {
+                               get { return xenum.Entry; }
+                       }
+                       public XmlQualifiedName Key {
+                               get { return (XmlQualifiedName) xenum.Key; }
+                       }
+                       public XmlSchemaObject Value {
+                               get { return (XmlSchemaObject) xenum.Value; }
+                       }
+                       // Methods
+                       public bool MoveNext()
+                       {
+                               return xenum.MoveNext();
+                       }
+
+                       //Explicit Interface implementation
+                       bool IEnumerator.MoveNext()
+                       {
+                               return xenum.MoveNext();
+                       }
+                       void IEnumerator.Reset()
+                       {
+                               xenum.Reset();
+                       }
+                       object IEnumerator.Current
+                       {
+                               get { return xenum.Entry; }
+                       }
+                       DictionaryEntry IDictionaryEnumerator.Entry {
+                               get { return xenum.Entry; }
+                       }
+                       object IDictionaryEnumerator.Key {
+                               get { return (XmlQualifiedName) xenum.Key; }
+                       }
+                       object IDictionaryEnumerator.Value {
+                               get { return (XmlSchemaObject) xenum.Value; }
+                       }
+               }
+       }
+}