aboutsummaryrefslogtreecommitdiffhomepage
path: root/lexlib/DefaultLexer.cxx
diff options
context:
space:
mode:
authormitchell <unknown>2020-01-04 13:50:52 -0500
committermitchell <unknown>2020-01-04 13:50:52 -0500
commit215e051e588219ec41341a27bb87793732cccd88 (patch)
treebfcd76bec4252a214985c66da3d3d88c8123154a /lexlib/DefaultLexer.cxx
parenta64428dc77747caba268e25e4ec9d7d1db10eefa (diff)
downloadscintilla-mirror-215e051e588219ec41341a27bb87793732cccd88.tar.gz
Backport: Define ILexerWithIdentity with methods for retrieving name, ID, and property values.
Implement ILexerWithIdentity on object lexers. Implement ILexerWithIdentity on LexerSimple wrapper for function lexers. Backport of changeset 7870:6ffcbd42288c, but with a new interface compatible with ILexer, not ILexer5.
Diffstat (limited to 'lexlib/DefaultLexer.cxx')
-rw-r--r--lexlib/DefaultLexer.cxx20
1 files changed, 17 insertions, 3 deletions
diff --git a/lexlib/DefaultLexer.cxx b/lexlib/DefaultLexer.cxx
index 9ca39b44a..e0f61084e 100644
--- a/lexlib/DefaultLexer.cxx
+++ b/lexlib/DefaultLexer.cxx
@@ -24,8 +24,12 @@ using namespace Scintilla;
static const char styleSubable[] = { 0 };
-DefaultLexer::DefaultLexer(const LexicalClass *lexClasses_, size_t nClasses_) :
- lexClasses(lexClasses_), nClasses(nClasses_) {
+DefaultLexer::DefaultLexer(const char *languageName_, int language_,
+ const LexicalClass *lexClasses_, size_t nClasses_) :
+ languageName(languageName_),
+ language(language_),
+ lexClasses(lexClasses_),
+ nClasses(nClasses_) {
}
DefaultLexer::~DefaultLexer() {
@@ -36,7 +40,7 @@ void SCI_METHOD DefaultLexer::Release() {
}
int SCI_METHOD DefaultLexer::Version() const {
- return lvMetaData;
+ return lvIdentity;
}
const char * SCI_METHOD DefaultLexer::PropertyNames() {
@@ -123,3 +127,13 @@ const char * SCI_METHOD DefaultLexer::TagsOfStyle(int style) {
const char * SCI_METHOD DefaultLexer::DescriptionOfStyle(int style) {
return (style < NamedStyles()) ? lexClasses[style].description : "";
}
+
+// ILexerWithIdentity methods
+const char * SCI_METHOD DefaultLexer::GetName() {
+ return languageName;
+}
+
+int SCI_METHOD DefaultLexer::GetIdentifier() {
+ return language;
+}
+