47 lines
785 B
C
47 lines
785 B
C
|
#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;
|
||
|
};
|
||
|
}
|