﻿// Decompiled with JetBrains decompiler
// Type: Mono.Xml.Schema.XsdQName
// Assembly: System.Xml, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e
// MVID: B96316B8-9B8D-4ED8-8305-8C4F91B6775A
// Assembly location: C:\Users\CGA Computer\Desktop\LEGO Universe Stuff\LOCO Server\Unity Web Player Extractor\Saved Files\LOCO Server.unity3d_unpacked\System.Xml.dll

using System;
using System.Xml;
using System.Xml.Schema;

namespace Mono.Xml.Schema
{
  internal class XsdQName : XsdName
  {
    public override XmlTokenizedType TokenizedType
    {
      get
      {
        return XmlTokenizedType.QName;
      }
    }

    public override XmlTypeCode TypeCode
    {
      get
      {
        return XmlTypeCode.QName;
      }
    }

    public override Type ValueType
    {
      get
      {
        return typeof (XmlQualifiedName);
      }
    }

    internal XsdQName()
    {
    }

    public override object ParseValue(string s, XmlNameTable nameTable, IXmlNamespaceResolver nsmgr)
    {
      if (nameTable == null)
        throw new ArgumentNullException("name table");
      if (nsmgr == null)
        throw new ArgumentNullException("namespace manager");
      XmlQualifiedName xmlQualifiedName = XmlQualifiedName.Parse(s, nsmgr, true);
      nameTable.Add(xmlQualifiedName.Name);
      nameTable.Add(xmlQualifiedName.Namespace);
      return (object) xmlQualifiedName;
    }

    internal override System.ValueType ParseValueType(string s, XmlNameTable nameTable, IXmlNamespaceResolver nsmgr)
    {
      return (System.ValueType) new QNameValueType(this.ParseValue(s, nameTable, nsmgr) as XmlQualifiedName);
    }
  }
}
