System.Xml.Xsl.XsltOld.XsltCompileContext.Document C# (CSharp) Method

Document() private method

private Document ( object arg0, string baseUri ) : XPathNodeIterator
arg0 object
baseUri string
return System.Xml.XPath.XPathNodeIterator
        private XPathNodeIterator Document(object arg0, string baseUri) {
            if (this.processor.permissions != null) {
                this.processor.permissions.PermitOnly();
            }
            XPathNodeIterator it = arg0 as XPathNodeIterator;
            if (it != null) {
                ArrayList list = new ArrayList();
                Hashtable documents = new Hashtable();
                while (it.MoveNext()) {
                    Uri uri = ComposeUri(it.Current.Value, baseUri ?? it.Current.BaseURI);
                    if (! documents.ContainsKey(uri)) {
                        documents.Add(uri, null);
                        list.Add(this.processor.GetNavigator(uri));
                    }
                }
                return new XPathArrayIterator(list);
            } else {
                return new XPathSingletonIterator(
                    this.processor.GetNavigator(
                        ComposeUri(XmlConvert.ToXPathString(arg0), baseUri ?? this.manager.Navigator.BaseURI)
                    )
                );
            }
        }