13 template <std::
integral T>
14 constexpr ByteTag& operator=(T value) {
19 template <std::
integral T>
20 [[nodiscard]]
constexpr operator T()
const {
24 [[nodiscard]]
constexpr operator std::byte()
const {
return (std::byte)data; }
26 template <std::
integral T>
27 [[nodiscard]]
constexpr explicit ByteTag(T value = 0) : data((schar)value) {}
29 [[nodiscard]]
constexpr explicit ByteTag(std::byte b) : data(std::to_integer<schar>(b)) {}
40 virtual ::Bedrock::Result<void> load(
::IDataInput& dis) ;
43 virtual ::Tag::Type getId()
const ;
46 virtual ::std::string toString()
const ;
49 virtual bool equals(
::Tag const& rhs)
const ;
52 virtual ::std::unique_ptr<::Tag> copy()
const ;
55 virtual uint64 hash()
const ;
74 MCFOLD ::Tag::Type $getId()
const;
76 MCAPI ::std::string $toString()
const;
78 MCAPI
bool $equals(
::Tag const& rhs)
const;
80 MCAPI ::std::unique_ptr<::Tag> $copy()
const;
82 MCAPI uint64 $hash()
const;
88 MCAPI
static void** $vftable();