#pragma once #include #include #include #include class Compiler { // 名前空間サポート NamespaceSupporter namespaceSupporter; // メタ情報 MetaImpl metaImpl; // データテーブル DataTable dataTable; public: NamespaceSupporter &GetNamespaceSupporter() { return namespaceSupporter; } MetaImpl &GetMeta() { return metaImpl; } DataTable &GetDataTable() { return dataTable; } static bool StringToType( const std::string &typeName, Type &type ); static const std::string TypeToString( const Type &type ); // コンパイル中のクラス const CClass *pCompilingClass; }; extern Compiler compiler;