aboutsummaryrefslogtreecommitdiffhomepage
path: root/lexers/LexHaskell.cxx
diff options
context:
space:
mode:
authorNeil <nyamatongwe@gmail.com>2019-12-22 22:36:51 +1100
committerNeil <nyamatongwe@gmail.com>2019-12-22 22:36:51 +1100
commiteed707bb9ad6da944af207a51e4a8d460d6c6846 (patch)
treeb504d202eea59088f3290d8c12d3307b17e88b93 /lexers/LexHaskell.cxx
parenta4bd72249722211f08ffa3e65c664a9ccbbc7f84 (diff)
downloadscintilla-mirror-eed707bb9ad6da944af207a51e4a8d460d6c6846.tar.gz
Define ILexer5 with methods for retrieving name, ID, and property values.
Implement ILexer5 on object lexers. Implement ILexer5 on LexerSimple wrapper for function lexers.
Diffstat (limited to 'lexers/LexHaskell.cxx')
-rw-r--r--lexers/LexHaskell.cxx13
1 files changed, 9 insertions, 4 deletions
diff --git a/lexers/LexHaskell.cxx b/lexers/LexHaskell.cxx
index 8ed53d772..4d4fe1dd6 100644
--- a/lexers/LexHaskell.cxx
+++ b/lexers/LexHaskell.cxx
@@ -390,7 +390,8 @@ class LexerHaskell : public DefaultLexer {
public:
LexerHaskell(bool literate_)
- : literate(literate_)
+ : DefaultLexer(literate_ ? "literatehaskell" : "haskell", literate_ ? SCLEX_LITERATEHASKELL : SCLEX_HASKELL)
+ , literate(literate_)
, firstImportLine(-1)
, firstImportIndent(0)
{}
@@ -401,7 +402,7 @@ public:
}
int SCI_METHOD Version() const override {
- return lvRelease4;
+ return lvRelease5;
}
const char * SCI_METHOD PropertyNames() override {
@@ -418,6 +419,10 @@ public:
Sci_Position SCI_METHOD PropertySet(const char *key, const char *val) override;
+ const char * SCI_METHOD PropertyGet(const char *key) override {
+ return osHaskell.PropertyGet(key);
+ }
+
const char * SCI_METHOD DescribeWordListSets() override {
return osHaskell.DescribeWordListSets();
}
@@ -432,11 +437,11 @@ public:
return 0;
}
- static ILexer4 *LexerFactoryHaskell() {
+ static ILexer5 *LexerFactoryHaskell() {
return new LexerHaskell(false);
}
- static ILexer4 *LexerFactoryLiterateHaskell() {
+ static ILexer5 *LexerFactoryLiterateHaskell() {
return new LexerHaskell(true);
}
};