aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorNeil <nyamatongwe@gmail.com>2020-07-16 08:04:11 +1000
committerNeil <nyamatongwe@gmail.com>2020-07-16 08:04:11 +1000
commit9f1fb22f074a8b7d5c97f8a8c5894927f5bb01d1 (patch)
treeecf1814eba064c5c8fbfefab21fd6226315f941f
parent5a72039e1a39c200b50f134e4917d216ea68fb48 (diff)
downloadscintilla-mirror-9f1fb22f074a8b7d5c97f8a8c5894927f5bb01d1.tar.gz
Make EncodingFamily an enum class for more type safety.
-rw-r--r--src/Document.cxx6
-rw-r--r--src/Document.h2
-rw-r--r--src/PositionCache.cxx4
3 files changed, 6 insertions, 6 deletions
diff --git a/src/Document.cxx b/src/Document.cxx
index 07ed604fd..8d250b9ab 100644
--- a/src/Document.cxx
+++ b/src/Document.cxx
@@ -1175,11 +1175,11 @@ int Document::SafeSegment(const char *text, int length, int lengthSegment) const
EncodingFamily Document::CodePageFamily() const noexcept {
if (SC_CP_UTF8 == dbcsCodePage)
- return efUnicode;
+ return EncodingFamily::unicode;
else if (dbcsCodePage)
- return efDBCS;
+ return EncodingFamily::dbcs;
else
- return efEightBit;
+ return EncodingFamily::eightBit;
}
void Document::ModifiedAt(Sci::Position pos) noexcept {
diff --git a/src/Document.h b/src/Document.h
index 37c37c4b8..ce0178695 100644
--- a/src/Document.h
+++ b/src/Document.h
@@ -18,7 +18,7 @@ class LineLevels;
class LineState;
class LineAnnotation;
-enum EncodingFamily { efEightBit, efUnicode, efDBCS };
+enum class EncodingFamily { eightBit, unicode, dbcs };
/**
* The range class represents a range of text in a document.
diff --git a/src/PositionCache.cxx b/src/PositionCache.cxx
index 28d2632fe..40dfe5829 100644
--- a/src/PositionCache.cxx
+++ b/src/PositionCache.cxx
@@ -613,10 +613,10 @@ TextSegment BreakFinder::Next() {
const int prev = nextBreak;
while (nextBreak < lineRange.end) {
int charWidth = 1;
- if (encodingFamily == efUnicode)
+ if (encodingFamily == EncodingFamily::unicode)
charWidth = UTF8DrawBytes(reinterpret_cast<unsigned char *>(&ll->chars[nextBreak]),
static_cast<int>(lineRange.end - nextBreak));
- else if (encodingFamily == efDBCS)
+ else if (encodingFamily == EncodingFamily::dbcs)
charWidth = pdoc->DBCSDrawBytes(
std::string_view(&ll->chars[nextBreak], lineRange.end - nextBreak));
const Representation *repr = preprs->RepresentationFromCharacter(&ll->chars[nextBreak], charWidth);