LibCpp: Replace defined preprocessor values when parsing

This commit is contained in:
Itamar 2021-03-12 17:04:08 +02:00 committed by Andreas Kling
commit 3658c4c567
Notes: sideshowbarker 2024-07-18 21:26:09 +09:00
8 changed files with 134 additions and 44 deletions

View file

@ -41,14 +41,17 @@ public:
const String& processed_text();
Vector<StringView> included_paths() const { return m_included_paths; }
private:
struct DefinedValue {
Optional<StringView> value;
};
using Definitions = HashMap<StringView, DefinedValue>;
const Definitions& definitions() const { return m_definitions; }
private:
void handle_preprocessor_line(const StringView&);
HashMap<StringView, DefinedValue> m_definitions;
Definitions m_definitions;
const StringView m_program;
StringBuilder m_builder;
Vector<StringView> m_lines;