#ifndef __NE_KIT_NULLABLE_H__ #define __NE_KIT_NULLABLE_H__ #include namespace Kernel { template struct IsDefined final { using ResultType = Type; using ResultTypeRef = Type&; static constexpr bool kValue = true; }; template <> struct IsDefined final { static constexpr bool kValue = false; }; template concept IsAcceptable = requires() { { IsDefined::kValue }; }; } // namespace Kernel #endif // !__NE_KIT_NULLABLE_H__