Hi, On Apr 6, 2010, at 11:32 AM, ext tbp wrote:
> On Tue, Apr 6, 2010 at 11:20 AM, <[email protected]> wrote: >> You don't need to use a binary search to recognize keywords. The C++ keywords >> are classified while tokenizing so instead of >> [snip] >> you should write something like >> >> switch (token.kind()) { >> case T_VOID: case T_iNT: ...: >> return true; >> ... >> } > I thought about it but that either breaks encapsulation or ask for > cplusplus/Token to be augmented with a dubious isDeclSpec predicate > for the single purpose of syntax highlighting. But if that's > preferable to another binary search, i'll gladly provide a patch if > you want. from a quick look at your patch it seems that you're highlighting cv-qualifiers, storage-class-specifiers and a subset of type-specifiers but i'm wondering why? why do you think it is a good idea to highlight "extern", "mutable", "register" and so on as types? > >> I'm not against highlighting primitive types but i don't think that >> hardcoding the matching of size_t & co in the lexer is a good idea. >> Yeah, I know about the hack we use in the lexer to match Qt-like classes >> (e.g. QObject, QPushButton and so on...) but I think it's wrong and we >> should definitely try to get rid of that ugly hack. > Point taken. Yep, we should use the Semantic Highlighter instead. I won't be in the office this week but if you are interested we can continue this discussion on #qt-creator next week. ciao robe _______________________________________________ Qt-creator mailing list [email protected] http://lists.trolltech.com/mailman/listinfo/qt-creator
