diff --git a/src/Lib/Script/Ast/IrType.cc b/src/Lib/Script/Ast/IrType.cc index 23e8b6df27050af5496a24135d5cb07eef6d83d8..9b9b0312b2402591d80a7a9d9d551672b40fb2de 100644 --- a/src/Lib/Script/Ast/IrType.cc +++ b/src/Lib/Script/Ast/IrType.cc @@ -120,11 +120,17 @@ IrTAss::parse(std::vector<Token> *) namespace Vivy::Script { +IrTOption::IrTOption(IrOption *opt) noexcept + : selfInnerOption(opt) +{ +} + IrType::Type IrTOption::type() const noexcept { return Type::Option; } + const IrOption * IrTOption::innerType() const noexcept { diff --git a/src/Lib/Script/Ast/IrType.hh b/src/Lib/Script/Ast/IrType.hh index 24497e12e790ca7da5bc6b62b2acaaec8efae371..e6f9ad3eaf64d96fcb5fd50d45b3641a30cb69fc 100644 --- a/src/Lib/Script/Ast/IrType.hh +++ b/src/Lib/Script/Ast/IrType.hh @@ -52,6 +52,8 @@ class IrTOption final : public IrType { IrOption *selfInnerOption = nullptr; + IrTOption(IrOption *) noexcept; + public: Type type() const noexcept override; const IrOption *innerType() const noexcept;