Batch insert lexer modules for smaller code.

https://sourceforge.net/p/scintilla/feature-requests/1388/
This commit is contained in:
Zufu Liu 2021-04-03 11:04:05 +11:00 committed by Neil Hodgson
parent ab443e7d19
commit 7e316174c7
3 changed files with 139 additions and 131 deletions

View File

@ -39,6 +39,10 @@ public:
lexerCatalogue.push_back(plm);
}
void AddLexerModules(std::initializer_list<LexerModule *> modules) {
lexerCatalogue.insert(lexerCatalogue.end(), modules);
}
unsigned int Count() const noexcept {
return static_cast<unsigned int>(lexerCatalogue.size());
}

View File

@ -43,6 +43,7 @@
#include <vector>
#include <map>
#include <set>
#include <initializer_list>
#include <algorithm>
#include <iterator>
#include <functional>

View File

@ -9,6 +9,7 @@
#include <cstring>
#include <vector>
#include <initializer_list>
#if _WIN32
#define EXPORT_FUNCTION __declspec(dllexport)
@ -169,139 +170,141 @@ void AddEachLexer() {
return;
}
//++Autogenerated -- run scripts/LexGen.py to regenerate
//**\(\tcatalogueLexilla.AddLexerModule(&\*);\n\)
catalogueLexilla.AddLexerModule(&lmA68k);
catalogueLexilla.AddLexerModule(&lmAbaqus);
catalogueLexilla.AddLexerModule(&lmAda);
catalogueLexilla.AddLexerModule(&lmAPDL);
catalogueLexilla.AddLexerModule(&lmAs);
catalogueLexilla.AddLexerModule(&lmAsm);
catalogueLexilla.AddLexerModule(&lmAsn1);
catalogueLexilla.AddLexerModule(&lmASY);
catalogueLexilla.AddLexerModule(&lmAU3);
catalogueLexilla.AddLexerModule(&lmAVE);
catalogueLexilla.AddLexerModule(&lmAVS);
catalogueLexilla.AddLexerModule(&lmBaan);
catalogueLexilla.AddLexerModule(&lmBash);
catalogueLexilla.AddLexerModule(&lmBatch);
catalogueLexilla.AddLexerModule(&lmBibTeX);
catalogueLexilla.AddLexerModule(&lmBlitzBasic);
catalogueLexilla.AddLexerModule(&lmBullant);
catalogueLexilla.AddLexerModule(&lmCaml);
catalogueLexilla.AddLexerModule(&lmCIL);
catalogueLexilla.AddLexerModule(&lmClw);
catalogueLexilla.AddLexerModule(&lmClwNoCase);
catalogueLexilla.AddLexerModule(&lmCmake);
catalogueLexilla.AddLexerModule(&lmCOBOL);
catalogueLexilla.AddLexerModule(&lmCoffeeScript);
catalogueLexilla.AddLexerModule(&lmConf);
catalogueLexilla.AddLexerModule(&lmCPP);
catalogueLexilla.AddLexerModule(&lmCPPNoCase);
catalogueLexilla.AddLexerModule(&lmCsound);
catalogueLexilla.AddLexerModule(&lmCss);
catalogueLexilla.AddLexerModule(&lmD);
catalogueLexilla.AddLexerModule(&lmDataflex);
catalogueLexilla.AddLexerModule(&lmDiff);
catalogueLexilla.AddLexerModule(&lmDMAP);
catalogueLexilla.AddLexerModule(&lmDMIS);
catalogueLexilla.AddLexerModule(&lmECL);
catalogueLexilla.AddLexerModule(&lmEDIFACT);
catalogueLexilla.AddLexerModule(&lmEiffel);
catalogueLexilla.AddLexerModule(&lmEiffelkw);
catalogueLexilla.AddLexerModule(&lmErlang);
catalogueLexilla.AddLexerModule(&lmErrorList);
catalogueLexilla.AddLexerModule(&lmESCRIPT);
catalogueLexilla.AddLexerModule(&lmF77);
catalogueLexilla.AddLexerModule(&lmFlagShip);
catalogueLexilla.AddLexerModule(&lmForth);
catalogueLexilla.AddLexerModule(&lmFortran);
catalogueLexilla.AddLexerModule(&lmFreeBasic);
catalogueLexilla.AddLexerModule(&lmFSharp);
catalogueLexilla.AddLexerModule(&lmGAP);
catalogueLexilla.AddLexerModule(&lmGui4Cli);
catalogueLexilla.AddLexerModule(&lmHaskell);
catalogueLexilla.AddLexerModule(&lmHollywood);
catalogueLexilla.AddLexerModule(&lmHTML);
catalogueLexilla.AddLexerModule(&lmIHex);
catalogueLexilla.AddLexerModule(&lmIndent);
catalogueLexilla.AddLexerModule(&lmInno);
catalogueLexilla.AddLexerModule(&lmJSON);
catalogueLexilla.AddLexerModule(&lmKix);
catalogueLexilla.AddLexerModule(&lmKVIrc);
catalogueLexilla.AddLexerModule(&lmLatex);
catalogueLexilla.AddLexerModule(&lmLISP);
catalogueLexilla.AddLexerModule(&lmLiterateHaskell);
catalogueLexilla.AddLexerModule(&lmLot);
catalogueLexilla.AddLexerModule(&lmLout);
catalogueLexilla.AddLexerModule(&lmLua);
catalogueLexilla.AddLexerModule(&lmMagikSF);
catalogueLexilla.AddLexerModule(&lmMake);
catalogueLexilla.AddLexerModule(&lmMarkdown);
catalogueLexilla.AddLexerModule(&lmMatlab);
catalogueLexilla.AddLexerModule(&lmMaxima);
catalogueLexilla.AddLexerModule(&lmMETAPOST);
catalogueLexilla.AddLexerModule(&lmMMIXAL);
catalogueLexilla.AddLexerModule(&lmModula);
catalogueLexilla.AddLexerModule(&lmMSSQL);
catalogueLexilla.AddLexerModule(&lmMySQL);
catalogueLexilla.AddLexerModule(&lmNim);
catalogueLexilla.AddLexerModule(&lmNimrod);
catalogueLexilla.AddLexerModule(&lmNncrontab);
catalogueLexilla.AddLexerModule(&lmNsis);
catalogueLexilla.AddLexerModule(&lmNull);
catalogueLexilla.AddLexerModule(&lmOctave);
catalogueLexilla.AddLexerModule(&lmOpal);
catalogueLexilla.AddLexerModule(&lmOScript);
catalogueLexilla.AddLexerModule(&lmPascal);
catalogueLexilla.AddLexerModule(&lmPB);
catalogueLexilla.AddLexerModule(&lmPerl);
catalogueLexilla.AddLexerModule(&lmPHPSCRIPT);
catalogueLexilla.AddLexerModule(&lmPLM);
catalogueLexilla.AddLexerModule(&lmPO);
catalogueLexilla.AddLexerModule(&lmPOV);
catalogueLexilla.AddLexerModule(&lmPowerPro);
catalogueLexilla.AddLexerModule(&lmPowerShell);
catalogueLexilla.AddLexerModule(&lmProgress);
catalogueLexilla.AddLexerModule(&lmProps);
catalogueLexilla.AddLexerModule(&lmPS);
catalogueLexilla.AddLexerModule(&lmPureBasic);
catalogueLexilla.AddLexerModule(&lmPython);
catalogueLexilla.AddLexerModule(&lmR);
catalogueLexilla.AddLexerModule(&lmRaku);
catalogueLexilla.AddLexerModule(&lmREBOL);
catalogueLexilla.AddLexerModule(&lmRegistry);
catalogueLexilla.AddLexerModule(&lmRuby);
catalogueLexilla.AddLexerModule(&lmRust);
catalogueLexilla.AddLexerModule(&lmSAS);
catalogueLexilla.AddLexerModule(&lmScriptol);
catalogueLexilla.AddLexerModule(&lmSmalltalk);
catalogueLexilla.AddLexerModule(&lmSML);
catalogueLexilla.AddLexerModule(&lmSorc);
catalogueLexilla.AddLexerModule(&lmSpecman);
catalogueLexilla.AddLexerModule(&lmSpice);
catalogueLexilla.AddLexerModule(&lmSQL);
catalogueLexilla.AddLexerModule(&lmSrec);
catalogueLexilla.AddLexerModule(&lmStata);
catalogueLexilla.AddLexerModule(&lmSTTXT);
catalogueLexilla.AddLexerModule(&lmTACL);
catalogueLexilla.AddLexerModule(&lmTADS3);
catalogueLexilla.AddLexerModule(&lmTAL);
catalogueLexilla.AddLexerModule(&lmTCL);
catalogueLexilla.AddLexerModule(&lmTCMD);
catalogueLexilla.AddLexerModule(&lmTEHex);
catalogueLexilla.AddLexerModule(&lmTeX);
catalogueLexilla.AddLexerModule(&lmTxt2tags);
catalogueLexilla.AddLexerModule(&lmVB);
catalogueLexilla.AddLexerModule(&lmVBScript);
catalogueLexilla.AddLexerModule(&lmVerilog);
catalogueLexilla.AddLexerModule(&lmVHDL);
catalogueLexilla.AddLexerModule(&lmVisualProlog);
catalogueLexilla.AddLexerModule(&lmX12);
catalogueLexilla.AddLexerModule(&lmXML);
catalogueLexilla.AddLexerModule(&lmYAML);
catalogueLexilla.AddLexerModules({
//++Autogenerated -- run scripts/LexillaGen.py to regenerate
//**\(\t\t&\*,\n\)
&lmA68k,
&lmAbaqus,
&lmAda,
&lmAPDL,
&lmAs,
&lmAsm,
&lmAsn1,
&lmASY,
&lmAU3,
&lmAVE,
&lmAVS,
&lmBaan,
&lmBash,
&lmBatch,
&lmBibTeX,
&lmBlitzBasic,
&lmBullant,
&lmCaml,
&lmCIL,
&lmClw,
&lmClwNoCase,
&lmCmake,
&lmCOBOL,
&lmCoffeeScript,
&lmConf,
&lmCPP,
&lmCPPNoCase,
&lmCsound,
&lmCss,
&lmD,
&lmDataflex,
&lmDiff,
&lmDMAP,
&lmDMIS,
&lmECL,
&lmEDIFACT,
&lmEiffel,
&lmEiffelkw,
&lmErlang,
&lmErrorList,
&lmESCRIPT,
&lmF77,
&lmFlagShip,
&lmForth,
&lmFortran,
&lmFreeBasic,
&lmFSharp,
&lmGAP,
&lmGui4Cli,
&lmHaskell,
&lmHollywood,
&lmHTML,
&lmIHex,
&lmIndent,
&lmInno,
&lmJSON,
&lmKix,
&lmKVIrc,
&lmLatex,
&lmLISP,
&lmLiterateHaskell,
&lmLot,
&lmLout,
&lmLua,
&lmMagikSF,
&lmMake,
&lmMarkdown,
&lmMatlab,
&lmMaxima,
&lmMETAPOST,
&lmMMIXAL,
&lmModula,
&lmMSSQL,
&lmMySQL,
&lmNim,
&lmNimrod,
&lmNncrontab,
&lmNsis,
&lmNull,
&lmOctave,
&lmOpal,
&lmOScript,
&lmPascal,
&lmPB,
&lmPerl,
&lmPHPSCRIPT,
&lmPLM,
&lmPO,
&lmPOV,
&lmPowerPro,
&lmPowerShell,
&lmProgress,
&lmProps,
&lmPS,
&lmPureBasic,
&lmPython,
&lmR,
&lmRaku,
&lmREBOL,
&lmRegistry,
&lmRuby,
&lmRust,
&lmSAS,
&lmScriptol,
&lmSmalltalk,
&lmSML,
&lmSorc,
&lmSpecman,
&lmSpice,
&lmSQL,
&lmSrec,
&lmStata,
&lmSTTXT,
&lmTACL,
&lmTADS3,
&lmTAL,
&lmTCL,
&lmTCMD,
&lmTEHex,
&lmTeX,
&lmTxt2tags,
&lmVB,
&lmVBScript,
&lmVerilog,
&lmVHDL,
&lmVisualProlog,
&lmX12,
&lmXML,
&lmYAML,
//--Autogenerated -- end of automatically generated section
});
}