System.Xml.Xsl.Xslt.XsltLoader.ParseQNameAttribute C# (CSharp) Method

ParseQNameAttribute() private method

private ParseQNameAttribute ( int attNum ) : QilName
attNum int
return System.Xml.Xsl.Qil.QilName
        private QilName ParseQNameAttribute(int attNum)
        {
            bool required = _input.IsRequiredAttribute(attNum);
            QilName result = null;
            if (!required)
            {
                _compiler.EnterForwardsCompatible();
            }
            if (_input.MoveToXsltAttribute(attNum, "name"))
            {
                string prefix, localName, namespaceName;
                if (ResolveQName(/*ignoreDefaultNs:*/true, _input.Value, out localName, out namespaceName, out prefix))
                {
                    result = f.QName(localName, namespaceName, prefix);
                }
            }
            if (!required)
            {
                _compiler.ExitForwardsCompatible(_input.ForwardCompatibility);
            }
            if (result == null && required)
            {
                result = f.QName(_compiler.PhantomNCName, _compiler.CreatePhantomNamespace(), _compiler.PhantomNCName);
            }
            return result;
        }