5namespace Stroika::Frameworks::Led {
7#if qStroika_Frameworks_Led_SupportGDI
14 inline SyntaxColoringMarkerOwner::ColoredStyleMarker::ColoredStyleMarker (
const Color& color)
24 inline TableDrivenKeywordSyntaxAnalyzer::KeywordTable::KeywordTable (
const Led_tChar* keyWords[],
size_t nKeywords,
25 int (*cmpFunction) (
const Led_tChar*,
const Led_tChar*,
size_t))
26 : fKeywords (keyWords)
27 , fNKeywords (nKeywords)
28 , fMaxKeywordLength ()
29 , fCmpFunction (cmpFunction)
33 for (
size_t i = 0; i < nKeywords; ++i) {
34 u = max (u,
unsigned (Led_tStrlen (keyWords[i])));
36 fMaxKeywordLength = u;
38 inline size_t TableDrivenKeywordSyntaxAnalyzer::KeywordTable::MaxKeywordLength ()
const
40 return fMaxKeywordLength;
42 inline size_t TableDrivenKeywordSyntaxAnalyzer::KeywordTable::KeywordLength (
const Led_tChar* t,
size_t nTChars)
const
44 for (
size_t i = 0; i < fNKeywords; ++i) {
45 const size_t kKeywordLen = Led_tStrlen (fKeywords[i]);
46 if (kKeywordLen <= nTChars and fCmpFunction (fKeywords[i], t, kKeywordLen) == 0) {
#define RequireNotNull(p)