public override System.Threading.Tasks.Task<ParsedDocument> Parse (ParseOptions parseOptions, System.Threading.CancellationToken cancellationToken)
		{
			var doc = new MonoDevelop.Xml.Editor.XmlParsedDocument (parseOptions.FileName);
			doc.Flags = ParsedDocumentFlags.NonSerializable;
			
			try {
				var xmlParser = new XmlParser (
					new XmlRootState (new HtmlTagState (), new HtmlClosingTagState (true)),
					true);
				
				xmlParser.Parse (parseOptions.Content.CreateReader ());
				doc.XDocument = xmlParser.Nodes.GetRoot ();
				doc.AddRange (xmlParser.Errors);
				if (doc.XDocument != null)
					doc.AddRange (Validate (doc.XDocument));
			}
			catch (Exception ex) {
				MonoDevelop.Core.LoggingService.LogError ("Unhandled error parsing HTML document", ex);
			}
			return System.Threading.Tasks.Task.FromResult((ParsedDocument)doc);
		}
Exemple #2
0
		public override ParsedDocument Parse (bool storeAst, string fileName, TextReader tr, Project project = null)
		{
			var doc = new MonoDevelop.Xml.Editor.XmlParsedDocument (fileName);
			doc.Flags = ParsedDocumentFlags.NonSerializable;
			
			try {
				var xmlParser = new XmlParser (
					new XmlRootState (new HtmlTagState (), new HtmlClosingTagState (true)),
					true);
				
				xmlParser.Parse (tr);
				doc.XDocument = xmlParser.Nodes.GetRoot ();
				doc.Add (xmlParser.Errors);
				if (doc.XDocument != null)
					doc.Add (Validate (doc.XDocument));
			}
			catch (Exception ex) {
				MonoDevelop.Core.LoggingService.LogError ("Unhandled error parsing HTML document", ex);
			}
			return doc;
		}
Exemple #3
0
        public override System.Threading.Tasks.Task <ParsedDocument> Parse(ParseOptions parseOptions, System.Threading.CancellationToken cancellationToken)
        {
            var doc = new MonoDevelop.Xml.Editor.XmlParsedDocument(parseOptions.FileName);

            doc.Flags = ParsedDocumentFlags.NonSerializable;

            try {
                var xmlParser = new XmlParser(
                    new XmlRootState(new HtmlTagState(), new HtmlClosingTagState(true)),
                    true);

                xmlParser.Parse(parseOptions.Content.CreateReader());
                doc.XDocument = xmlParser.Nodes.GetRoot();
                doc.AddRange(xmlParser.Errors);
                if (doc.XDocument != null)
                {
                    doc.AddRange(Validate(doc.XDocument));
                }
            }
            catch (Exception ex) {
                MonoDevelop.Core.LoggingService.LogError("Unhandled error parsing HTML document", ex);
            }
            return(System.Threading.Tasks.Task.FromResult((ParsedDocument)doc));
        }
Exemple #4
0
        public override ParsedDocument Parse(bool storeAst, string fileName, TextReader tr, Project project = null)
        {
            var doc = new MonoDevelop.Xml.Editor.XmlParsedDocument(fileName);

            doc.Flags = ParsedDocumentFlags.NonSerializable;

            try {
                var xmlParser = new XmlParser(
                    new XmlRootState(new HtmlTagState(), new HtmlClosingTagState(true)),
                    true);

                xmlParser.Parse(tr);
                doc.XDocument = xmlParser.Nodes.GetRoot();
                doc.Add(xmlParser.Errors);
                if (doc.XDocument != null)
                {
                    doc.Add(Validate(doc.XDocument));
                }
            }
            catch (Exception ex) {
                MonoDevelop.Core.LoggingService.LogError("Unhandled error parsing HTML document", ex);
            }
            return(doc);
        }