System.Xml.XmlTextReaderImpl.DtdParserProxy_PushExternalSubset C# (CSharp) Method

DtdParserProxy_PushExternalSubset() private method

private DtdParserProxy_PushExternalSubset ( string systemId, string publicId ) : bool
systemId string
publicId string
return bool
        internal bool DtdParserProxy_PushExternalSubset(string systemId, string publicId)
        {
            Debug.Assert(_parsingStatesStackTop == -1);
            Debug.Assert((systemId != null && systemId.Length > 0) || (publicId != null && publicId.Length > 0));

            if (IsResolverNull)
            {
                return false;
            }
            if (_ps.baseUri == null && !string.IsNullOrEmpty(_ps.baseUriStr))
            {
                _ps.baseUri = _xmlResolver.ResolveUri(null, _ps.baseUriStr);
            }
            PushExternalEntityOrSubset(publicId, systemId, _ps.baseUri, null);

            _ps.entity = null;
            _ps.entityId = 0;

            Debug.Assert(_ps.appendMode);
            int initialPos = _ps.charPos;
            if (_v1Compat)
            {
                EatWhitespaces(null);
            }
            if (!ParseXmlDeclaration(true))
            {
                _ps.charPos = initialPos;
            }

            return true;
        }

Usage Example

 bool IDtdParserAdapter.PushExternalSubset(string?systemId, string?publicId)
 {
     return(_reader.DtdParserProxy_PushExternalSubset(systemId, publicId));
 }
XmlTextReaderImpl