CppParser
Loading...
Searching...
No Matches
lexer-helper.cpp
Go to the documentation of this file.
1#include "lexer-helper.h"
2
3#include <map>
4#include <set>
5#include <string>
6
7extern std::set<std::string> gMacroNames;
8extern std::set<std::string> gKnownApiDecorNames;
9extern std::map<std::string, int> gDefinedNames;
10extern std::set<std::string> gUndefinedNames;
11extern std::set<std::string> gIgnorableMacroNames;
12extern std::map<std::string, int> gRenamedKeywords;
13
14MacroDefineInfo getMacroDefineInfo(const std::string& id)
15{
16 if (gUndefinedNames.count(id))
18
19 if (gDefinedNames.count(id))
21
23}
24
25std::optional<int> getIdValue(const std::string& id)
26{
27 if (gUndefinedNames.count(id))
28 return std::nullopt;
29
30 const auto itr = gDefinedNames.find(id);
31 if (itr == gDefinedNames.end())
32 return std::nullopt;
33
34 return itr->second;
35}
std::optional< int > getIdValue(const std::string &id)
std::set< std::string > gMacroNames
Definition: cppparser.cpp:42
std::set< std::string > gKnownApiDecorNames
Definition: cppparser.cpp:43
std::map< std::string, int > gDefinedNames
Definition: cppparser.cpp:44
std::set< std::string > gIgnorableMacroNames
Definition: cppparser.cpp:46
MacroDefineInfo getMacroDefineInfo(const std::string &id)
std::map< std::string, int > gRenamedKeywords
Definition: cppparser.cpp:47
std::set< std::string > gUndefinedNames
Definition: cppparser.cpp:45
MacroDefineInfo
Definition: parser.l.h:58