aboutsummaryrefslogtreecommitdiffhomepage
path: root/lexlib
diff options
context:
space:
mode:
Diffstat (limited to 'lexlib')
-rw-r--r--lexlib/LexerModule.cxx17
-rw-r--r--lexlib/LexerModule.h22
2 files changed, 24 insertions, 15 deletions
diff --git a/lexlib/LexerModule.cxx b/lexlib/LexerModule.cxx
index fa4a349c1..a03be30ef 100644
--- a/lexlib/LexerModule.cxx
+++ b/lexlib/LexerModule.cxx
@@ -34,7 +34,7 @@ LexerModule::LexerModule(int language_,
language(language_),
fnLexer(fnLexer_),
fnFolder(fnFolder_),
- fnFactory(0),
+ fnFactory(nullptr),
wordListDescriptions(wordListDescriptions_),
lexClasses(lexClasses_),
nClasses(nClasses_),
@@ -46,8 +46,8 @@ LexerModule::LexerModule(int language_,
const char *languageName_,
const char * const wordListDescriptions_[]) :
language(language_),
- fnLexer(0),
- fnFolder(0),
+ fnLexer(nullptr),
+ fnFolder(nullptr),
fnFactory(fnFactory_),
wordListDescriptions(wordListDescriptions_),
lexClasses(nullptr),
@@ -55,8 +55,15 @@ LexerModule::LexerModule(int language_,
languageName(languageName_) {
}
+LexerModule::~LexerModule() {
+}
+
+int LexerModule::GetLanguage() const {
+ return language;
+}
+
int LexerModule::GetNumWordLists() const {
- if (wordListDescriptions == NULL) {
+ if (!wordListDescriptions) {
return -1;
} else {
int numWordLists = 0;
@@ -106,7 +113,7 @@ void LexerModule::Fold(Sci_PositionU startPos, Sci_Position lengthDoc, int initS
// Move back one line in case deletion wrecked current line fold state
if (lineCurrent > 0) {
lineCurrent--;
- Sci_Position newStartPos = styler.LineStart(lineCurrent);
+ const Sci_Position newStartPos = styler.LineStart(lineCurrent);
lengthDoc += startPos - newStartPos;
startPos = newStartPos;
initStyle = 0;
diff --git a/lexlib/LexerModule.h b/lexlib/LexerModule.h
index 050f0470d..e1d65e703 100644
--- a/lexlib/LexerModule.h
+++ b/lexlib/LexerModule.h
@@ -20,8 +20,9 @@ typedef ILexer4 *(*LexerFactoryFunction)();
/**
* A LexerModule is responsible for lexing and folding a particular language.
- * The class maintains a list of LexerModules which can be searched to find a
+ * The Catalogue class maintains a list of LexerModules which can be searched to find a
* module appropriate to a particular language.
+ * The ExternalLexerModule subclass holds lexers loaded from DLLs or shared libraries.
*/
class LexerModule {
protected:
@@ -35,20 +36,21 @@ protected:
public:
const char *languageName;
- LexerModule(int language_,
+ LexerModule(
+ int language_,
LexerFunction fnLexer_,
- const char *languageName_=0,
- LexerFunction fnFolder_=0,
- const char * const wordListDescriptions_[] = NULL,
+ const char *languageName_=nullptr,
+ LexerFunction fnFolder_= nullptr,
+ const char * const wordListDescriptions_[]=nullptr,
const LexicalClass *lexClasses_=nullptr,
size_t nClasses_=0);
- LexerModule(int language_,
+ LexerModule(
+ int language_,
LexerFactoryFunction fnFactory_,
const char *languageName_,
- const char * const wordListDescriptions_[] = NULL);
- virtual ~LexerModule() {
- }
- int GetLanguage() const { return language; }
+ const char * const wordListDescriptions_[]=nullptr);
+ virtual ~LexerModule();
+ int GetLanguage() const;
// -1 is returned if no WordList information is available
int GetNumWordLists() const;