diff options
author | Jerome LAFORGE <jerome.laforge@gmail.com> | 2012-03-22 18:12:44 +0100 |
---|---|---|
committer | Jerome LAFORGE <jerome.laforge@gmail.com> | 2012-03-22 18:12:44 +0100 |
commit | 6d068ade12be51b9331942b02a07c5c44abe6226 (patch) | |
tree | 28d951ab8eca1d638e887514f9b9797a9c281c3f | |
parent | eae63e13f11f88571c59fdbdffcf8510bbe95432 (diff) | |
download | scintilla-mirror-6d068ade12be51b9331942b02a07c5c44abe6226.tar.gz |
Use SparseState instead of std::vector.
Cleaning dead code.
Feature #3510158.
-rw-r--r-- | lexers/LexSQL.cxx | 16 |
1 files changed, 4 insertions, 12 deletions
diff --git a/lexers/LexSQL.cxx b/lexers/LexSQL.cxx index dc4e164b4..77f96b016 100644 --- a/lexers/LexSQL.cxx +++ b/lexers/LexSQL.cxx @@ -30,6 +30,7 @@ #include "CharacterSet.h" #include "LexerModule.h" #include "OptionSet.h" +#include "SparseState.h" #ifdef SCI_NAMESPACE using namespace Scintilla; @@ -65,10 +66,7 @@ static inline bool IsANumberChar(int ch) { class SQLStates { public : void Set(int lineNumber, unsigned short int sqlStatesLine) { - if (!sqlStatement.size() == 0 || !sqlStatesLine == 0) { - sqlStatement.resize(lineNumber + 1, 0); - sqlStatement[lineNumber] = sqlStatesLine; - } + sqlStatement.Set(lineNumber, sqlStatesLine); } unsigned short int IgnoreWhen (unsigned short int sqlStatesLine, bool enable) { @@ -181,17 +179,13 @@ public : } unsigned short int ForLine(int lineNumber) { - if ((lineNumber > 0) && (sqlStatement.size() > static_cast<size_t>(lineNumber))) { - return sqlStatement[lineNumber]; - } else { - return 0; - } + return sqlStatement.ValueAt(lineNumber); } SQLStates() {} private : - std::vector <unsigned short int> sqlStatement; + SparseState <unsigned short int> sqlStatement; enum { MASK_NESTED_CASES = 0x01FF, MASK_INTO_SELECT_STATEMENT = 0x0200, @@ -610,7 +604,6 @@ void SCI_METHOD LexerSQL::Fold(unsigned int startPos, int length, int initStyle, if (!sqlStates.IsCaseMergeWithoutWhenFound(sqlStatesCurrentLine)) levelNext--; sqlStatesCurrentLine = sqlStates.IntoMergeStatement(sqlStatesCurrentLine, false); - //sqlStatesCurrentLine = sqlStates.WhenThenFound(sqlStatesCurrentLine, false); levelNext--; } if (sqlStates.IsIntoSelectStatement(sqlStatesCurrentLine)) @@ -722,7 +715,6 @@ void SCI_METHOD LexerSQL::Fold(unsigned int startPos, int length, int initStyle, sqlStatesCurrentLine = sqlStates.EndCaseBlock(sqlStatesCurrentLine); if (!sqlStates.IsCaseMergeWithoutWhenFound(sqlStatesCurrentLine)) levelNext--; //again for the "end case;" and block when - //sqlStatesCurrentLine = sqlStates.WhenThenFound(sqlStatesCurrentLine, false); } } else if (!options.foldOnlyBegin) { if (strcmp(s, "case") == 0) |