1 // Scintilla source code edit control
2 /** @file LexerNoExceptions.h
3 ** A simple lexer with no state.
5 // Copyright 1998-2010 by Neil Hodgson <neilh@scintilla.org>
6 // The License.txt file describes the conditions under which this software may be distributed.
8 #ifndef LexerNoExceptions_H
9 #define LexerNoExceptions_H
15 // A simple lexer with no state
16 class LexerNoExceptions
: public LexerBase
{
18 // TODO Also need to prevent exceptions in constructor and destructor
19 int SCI_METHOD
PropertySet(const char *key
, const char *val
);
20 int SCI_METHOD
WordListSet(int n
, const char *wl
);
21 void SCI_METHOD
Lex(unsigned int startPos
, int lengthDoc
, int initStyle
, IDocument
*pAccess
);
22 void SCI_METHOD
Fold(unsigned int startPos
, int lengthDoc
, int initStyle
, IDocument
*);
24 virtual void Lexer(unsigned int startPos
, int length
, int initStyle
, IDocument
*pAccess
, Accessor
&styler
) = 0;
25 virtual void Folder(unsigned int startPos
, int length
, int initStyle
, IDocument
*pAccess
, Accessor
&styler
) = 0;