Discussion:
Proposal for a Common Lexer framework
Gur Stavi
2013-09-02 12:12:09 UTC
Permalink
Hello,

I proposed a new lexer for Makefiles here:
https://sourceforge.net/p/scintilla/feature-requests/1012/

As part of this new lexer I implemented a lexer framework that I would like to add as a separate module into lexlib.

The framework includes a LexCommon class that may be inherited by actual Lexer class.

The LexCommon provides default implementation for all the virtual methods required by ILexer.

The new lexer only need to override the 'Lex' method to do the actual lexing.

Optionally the developer may instead override the DoLex method of LexerCommon to take advantage of a new Entity based lexing system within LexCommon that helps with building a lex tree and then coloring the segment from the tree.

LexCommon also implements an alternate Property system that allow tying a property directly to members in the lexer class without the need for an additional Options class.

Regards,
Gur
--
You received this message because you are subscribed to the Google Groups "scintilla-interest" group.
To unsubscribe from this group and stop receiving emails from it, send an email to scintilla-interest+***@googlegroups.com.
To post to this group, send email to scintilla-***@googlegroups.com.
Visit this group at http://groups.google.com/group/scintilla-interest.
For more options, visit https://groups.google.com/groups/opt_out.
Neil Hodgson
2013-09-04 02:09:58 UTC
Permalink
Post by Gur Stavi
As part of this new lexer I implemented a lexer framework that I would like to add as a separate module into lexlib.
Unless other people want to use this framework, I think it will cause more maintenance effort than it is worth.

If anyone wants this, or wants it with modifications or wants just part of it then they should speak up.

Neil
--
You received this message because you are subscribed to the Google Groups "scintilla-interest" group.
To unsubscribe from this group and stop receiving emails from it, send an email to scintilla-interest+***@googlegroups.com.
To post to this group, send email to scintilla-***@googlegroups.com.
Visit this group at http://groups.google.com/group/scintilla-interest.
For more options, visit https://groups.google.com/groups/opt_out.
Loading...