6 #include "ITPushLexer.hh"
7 #include "APushParser.hh"
8 #include "TDictionary.hh"
10 ITPushLexer::ITPushLexer(ALogger& l, APushParser& p, TDictionary& d) : TPushLexer(l, p), dictionary(d)
16 ITPushLexer::complete()
20 std::list<std::string> complete_list;
21 std::string new_buffer = dictionary.complete(buffer, complete_list);
23 if (!complete_list.size())
26 logger.warning("wrong prefix: nothing to complete");
28 else if (complete_list.size() == 1)
30 // good! we have found the macro
35 // we have more than one matching macro
36 logger.warning("prefix not sufficient");