I first use a dynamic lexer and the LLparser framework.
I created a complex Grammar class and the TokenReader, created by the parser, has some additional functions or some special tokens, given by the dynamic lexer.
But due to some performance issues, I decided now to change to a programmatic mergable lexer.
That works fine,I get ExctMatches and NoMatches and some valid tokens.
Everything perfect as long I use simple grammar definitions with Terminals.As soon as a NonTerminal is recognized, I get some syntax errors, that have not been there using the dynamic lexer. It seems, as if the special GrammarClass or better the LLParser still recognize on base of the Grammar a wrong token and error occurs, that I can't debug and can't understand.
When I switched to the programmatic lexer I hoped to be able to neglect the complex grammar class in the future and do all the verifying of the tokens in the programmatic lexer and TokenReader of the syntaxLanguage.
My question is, can I use my own customer programmatic lexer together with a normal Parser, inheriting from ParserBase, instead of the LLParser?
Could I get syntax highlighting, error messages, red squiggle lines anyway, although using a very simple parser implementation without Grammar?
I realized that I don't really need an AST tree. Therefore I would like to keep the rest as simple as possible
The validation of the tokens now in the TokenReader of the LL framework, created by the LLParser, where can it be done - in the Lexer or in the Parser class inheriting vom ParserBase class? Or can I use the tokenReader together wîth the ParserBase class?
Intellisense, Completion list, Error list, can all that be used without using a LlParser with a grammar class?
Thnaks for answers!