#pragma once class Symbol { public: explicit Symbol(); private: std::string identifier; Type type; std::variant value; }; Symbol::Symbol(std::string identifier, Type type, std::variant value) : identifier(identifier), type(type), value(value) { }