#pragma once #include "EHS.h" #include "Str.h" namespace lwe { class Type { private: UInt_64 hashId; Str_8 id; public: Type(); Type(Str_8 id); Type(const Type& type) = default; Type(Type&& type) noexcept; Type& operator=(const Type& type); Type& operator=(Type&& type) noexcept; bool operator!() const; bool operator==(const Type& type) const; bool operator!=(const Type& type) const; bool operator==(const UInt_64 hashId) const; bool operator!=(const UInt_64 hashId) const; bool operator==(const Str_8& type) const; bool operator!=(const Str_8& type) const; UInt_64 GetHashId() const; Str_8 GetId() const; bool IsValid() const; }; }