Refactored: Reuse existing code
[TortoiseGit.git] / ext / scintilla / lexlib / LexerNoExceptions.h
blob6d1315d1f1c2f2df990d3cf29c1a06bf09de6b18
1 // Scintilla source code edit control
2 /** @file LexerNoExceptions.h
3 ** A simple lexer with no state.
4 **/
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
11 #ifdef SCI_NAMESPACE
12 namespace Scintilla {
13 #endif
15 // A simple lexer with no state
16 class LexerNoExceptions : public LexerBase {
17 public:
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;
28 #ifdef SCI_NAMESPACE
30 #endif
32 #endif