diff options
Diffstat (limited to 'src/CharClassify.h')
| -rw-r--r-- | src/CharClassify.h | 25 | 
1 files changed, 25 insertions, 0 deletions
| diff --git a/src/CharClassify.h b/src/CharClassify.h new file mode 100644 index 000000000..881d3a114 --- /dev/null +++ b/src/CharClassify.h @@ -0,0 +1,25 @@ +// Scintilla source code edit control +/** @file CharClassify.h + ** Character classifications used by Document and RESearch. + **/ +// Copyright 2006 by Neil Hodgson <neilh@scintilla.org> +// The License.txt file describes the conditions under which this software may be distributed. + +#ifndef CHARCLASSIFY_H +#define CHARCLASSIFY_H + +class CharClassify { +public: +	CharClassify(); + +	enum cc { ccSpace, ccNewLine, ccWord, ccPunctuation }; +	void SetDefaultCharClasses(bool includeWordClass); +	void SetCharClasses(const unsigned char *chars, cc newCharClass); +	cc GetClass(unsigned char ch) const { return static_cast<cc>(charClass[ch]);} +	bool IsWord(unsigned char ch) const { return static_cast<cc>(charClass[ch]) == ccWord;} + +private: +	enum { maxChar=256 }; +	unsigned char charClass[maxChar];    // not type cc to save space +}; +#endif | 
