1 skipped line |
2 | | 2 | | /** @file LexMSSQL.cxx |
|
|
|
5 | | // Copyright 1998-2002 by Filip Yaghob <fy@eg.cz> | | 5 | | // By Filip Yaghob <fyaghob@gmail.com> |
|
|
|
18 skipped lines |
27 | | 27 | | #define KW_MSSQL_STORED_PROCEDURES 5 |
|
28 | | 28 | | #define KW_MSSQL_OPERATORS 6 |
|
|
30 | | //~ val SCE_MSSQL_DEFAULT=0 | | |
31 | | //~ val SCE_MSSQL_COMMENT=1 | | |
32 | | //~ val SCE_MSSQL_LINE_COMMENT=2 | | |
33 | | //~ val SCE_MSSQL_NUMBER=3 | | |
34 | | //~ val SCE_MSSQL_STRING=4 | | |
8 skipped lines |
43 | | //~ val SCE_MSSQL_FUNCTION=13 | | |
44 | | //~ val SCE_MSSQL_STORED_PROCEDURE=14 | | |
45 | | //~ val SCE_MSSQL_DEFAULT_PREF_DATATYPE 15 | | |
46 | | //~ val SCE_MSSQL_COLUMN_NAME_2 16 | | |
47 | | | | |
48 | | 30 | | static bool isMSSQLOperator(char ch) { |
|
49 | | 31 | | if (isascii(ch) && isalnum(ch)) |
|
|
82 skipped lines |
133 | | 115 | | bool fold = styler.GetPropertyInt("fold") != 0; |
|
134 | | 116 | | int lineCurrent = styler.GetLine(startPos); |
|
135 | | 117 | | int spaceFlags = 0; |
|
136 | | /* | | |
137 | | WordList &kwStatements = *keywordlists[KW_MSSQL_STATEMENTS]; | | |
138 | | WordList &kwDataTypes = *keywordlists[KW_MSSQL_DATA_TYPES]; | | |
139 | | WordList &kwSystemTables = *keywordlists[KW_MSSQL_SYSTEM_TABLES]; | | |
140 | | WordList &kwGlobalVariables = *keywordlists[KW_MSSQL_GLOBAL_VARIABLES]; | | |
141 | | WordList &kwFunctions = *keywordlists[KW_MSSQL_FUNCTIONS]; | | |
|
143 | | char s[100]; | | |
144 | | int iixx = 0; | | |
145 | | s[0] = 's'; s[1] = 'e'; s[2] = 'l'; s[3] = 'e'; s[4] = 'c'; s[5] = 't'; s[6] = 0; | | |
146 | | if (kwStatements.InList(s)) | | |
147 | | iixx = 1; | | |
148 | | s[0] = 's'; s[1] = 'e'; s[2] = 'r'; s[3] = 'v'; s[4] = 'e'; s[5] = 'r'; s[6] = 'n'; s[7] = 'a'; s[8] = 'm'; s[9] = 'e'; s[10] = 0; | | |
149 | | if (kwGlobalVariables.InList(s)) | | |
150 | | iixx += 2; | | |
151 | | */ | | |
152 | | 119 | | int state = initStyle; |
|
153 | | 120 | | int prevState = initStyle; |
|
154 | | 121 | | char chPrev = ' '; |
|
160 skipped lines |
315 | | 282 | | styler.ColourTo(lengthDoc - 1, state); |
|
|
|
| | 285 | | static void FoldMSSQLDoc(unsigned int startPos, int length, int, WordList *[], Accessor &styler) { |
| | 286 | | bool foldComment = styler.GetPropertyInt("fold.comment") != 0; |
| | 287 | | bool foldCompact = styler.GetPropertyInt("fold.compact", 1) != 0; |
| | 288 | | unsigned int endPos = startPos + length; |
| | 289 | | int visibleChars = 0; |
53 skipped lines |
| | 343 | | // Fill in the real level of the next line, keeping the current flags as they will be filled in later |
| | 344 | | int flagsNext = styler.LevelAt(lineCurrent) & ~SC_FOLDLEVELNUMBERMASK; |
| | 345 | | styler.SetLevel(lineCurrent, levelPrev | flagsNext); |
| | 346 | | } |
| | 347 | | |
318 | | 348 | | static const char * const sqlWordListDesc[] = { |
|
|
|
5 skipped lines |
|
|
|
329 | | LexerModule lmMSSQL(SCLEX_MSSQL, ColouriseMSSQLDoc, "mssql", 0, sqlWordListDesc); | | 359 | | LexerModule lmMSSQL(SCLEX_MSSQL, ColouriseMSSQLDoc, "mssql", FoldMSSQLDoc, sqlWordListDesc); |
|