@@ -61,12 +61,17 @@ class SimpleTokenizer : public Tokenizer {
6161 template <size_t size>
6262 bool tokenize (const char (&code)[size])
6363 {
64- return tokenize (code, size-1 , std::string (list. isCPP () ? " test.cpp " : " test.c " ) );
64+ return tokenize (code, size-1 );
6565 }
6666
6767 bool tokenize (const std::string& code)
6868 {
69- return tokenize (code.data (), code.size (), std::string (list.isCPP () ? " test.cpp" : " test.c" ));
69+ return tokenize (code.data (), code.size ());
70+ }
71+
72+ bool tokenize (const char * code, std::size_t size)
73+ {
74+ return tokenize (code, size, std::string (list.isCPP () ? " test.cpp" : " test.c" ));
7075 }
7176
7277private:
@@ -107,7 +112,7 @@ class SimpleTokenList
107112 explicit SimpleTokenList (const char (&code)[size], Standards::Language lang = Standards::Language::CPP)
108113 : list{settings, lang}
109114 {
110- if (!list.createTokensFromBuffer (code, size- 1 ))
115+ if (!list.createTokensFromString (code))
111116 throw std::runtime_error (" creating tokens failed" );
112117 }
113118
@@ -116,7 +121,7 @@ class SimpleTokenList
116121 : list{settings, lang}
117122 {
118123 list.appendFileIfNew (file0);
119- if (!list.createTokensFromBuffer (code, size- 1 ))
124+ if (!list.createTokensFromString (code))
120125 throw std::runtime_error (" creating tokens failed" );
121126 }
122127
@@ -184,8 +189,8 @@ class PreprocessorHelper
184189 }
185190
186191private:
187- static std::map<std::string, std::string> getcode (const Settings& settings, ErrorLogger& errorlogger, const char code[] , std::size_t size, const std::string &filename = " file.c" , SuppressionList *inlineSuppression = nullptr );
188- static std::map<std::string, std::string> getcode (const Settings& settings, ErrorLogger& errorlogger, const char code[] , std::size_t size, std::set<std::string> cfgs, const std::string &filename = " file.c" , SuppressionList *inlineSuppression = nullptr );
192+ static std::map<std::string, std::string> getcode (const Settings& settings, ErrorLogger& errorlogger, const char * code, std::size_t size, const std::string &filename = " file.c" , SuppressionList *inlineSuppression = nullptr );
193+ static std::map<std::string, std::string> getcode (const Settings& settings, ErrorLogger& errorlogger, const char * code, std::size_t size, std::set<std::string> cfgs, const std::string &filename = " file.c" , SuppressionList *inlineSuppression = nullptr );
189194};
190195
191196namespace cppcheck {
@@ -262,13 +267,6 @@ class SimpleTokenizer2 : public Tokenizer {
262267 preprocess (code, size-1 , mFiles , file0, *this , errorlogger);
263268 }
264269
265- // TODO: get rid of this
266- SimpleTokenizer2 (const Settings &settings, ErrorLogger &errorlogger, const char * code, std::size_t size, const std::string& file0)
267- : Tokenizer{TokenList{settings, Path::identify (file0, false )}, errorlogger}
268- {
269- preprocess (code, size, mFiles , file0, *this , errorlogger);
270- }
271-
272270private:
273271 static void preprocess (const char * code, std::size_t size, std::vector<std::string> &files, const std::string& file0, Tokenizer& tokenizer, ErrorLogger& errorlogger);
274272
@@ -279,16 +277,11 @@ struct TokenListHelper
279277{
280278 template <size_t size>
281279 static bool createTokensFromString (TokenList& tokenlist, const char (&code)[size], const std::string& file)
282- {
283- return createTokensFromBuffer (tokenlist, code, size-1 , file);
284- }
285-
286- static bool createTokensFromBuffer (TokenList& tokenlist, const char * data, size_t size, const std::string& file)
287280 {
288281 if (tokenlist.front ())
289282 throw std::runtime_error (" token list is not empty" );
290283 tokenlist.appendFileIfNew (file);
291- return tokenlist.createTokensFromBuffer (data, size );
284+ return tokenlist.createTokensFromString (code );
292285 }
293286};
294287
0 commit comments