1 // Scintilla source code edit control
2 /** @file CharClassify.h
3 ** Character classifications used by Document and RESearch.
5 // Copyright 2006-2009 by Neil Hodgson <neilh@scintilla.org>
6 // The License.txt file describes the conditions under which this software may be distributed.
11 namespace Scintilla::Internal
{
13 enum class CharacterClass
: unsigned char { space
, newLine
, word
, punctuation
};
19 void SetDefaultCharClasses(bool includeWordClass
);
20 void SetCharClasses(const unsigned char *chars
, CharacterClass newCharClass
);
21 int GetCharsOfClass(CharacterClass characterClass
, unsigned char *buffer
) const noexcept
;
22 CharacterClass
GetClass(unsigned char ch
) const noexcept
{ return charClass
[ch
];}
23 bool IsWord(unsigned char ch
) const noexcept
{ return charClass
[ch
] == CharacterClass::word
;}
26 static constexpr int maxChar
=256;
27 CharacterClass charClass
[maxChar
];