Beispiel #1
0
        public void Parse(Stream stream, Action <string> callback)
        {
            var inputStream = new AntlrInputStream(stream);
            var lexer       = new HTMLLexer(inputStream);

            lexer.RemoveErrorListeners();
            var tokenStream = new CommonTokenStream(lexer);
            var parser      = new HTMLParser(tokenStream);

            parser.RemoveErrorListeners();
            var context  = parser.htmlDocument();
            var listener = new HTMLKeywordParserListener()
            {
                Emit            = (x) => callback(x),
                MinimumLength   = MinimumLength,
                MaximumLength   = MaximumLength,
                IncludeChardata = IncludeChardata,
                IncludeComments = IncludeComments
            };
            var walker = new ParseTreeWalker();

            walker.Walk(listener, context);
        }