LeviLamina
Loading...
Searching...
No Matches
ComplexAliasDescriptor.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/string/HashedString.h"
7#include "mc/platform/Result.h"
8#include "mc/platform/brstd/function_ref.h"
9#include "mc/world/item/ItemDescriptor.h"
10
11// auto generated forward declare list
12// clang-format off
13class BinaryStream;
14class CompoundTag;
15class Item;
17// clang-format on
18
19struct ComplexAliasDescriptor : public ::ItemDescriptor::BaseDescriptor {
20public:
21 // member variables
22 // NOLINTBEGIN
23 ::ll::TypedStorage<8, 48, ::HashedString> mFullName;
24 ::ll::TypedStorage<8, 16, ::ItemDescriptor::ItemEntry> mDefaultItem;
25 // NOLINTEND
26
27public:
28 // prevent constructor by default
29 ComplexAliasDescriptor();
30
31public:
32 // virtual functions
33 // NOLINTBEGIN
34 virtual ::std::unique_ptr<::ItemDescriptor::BaseDescriptor> clone() const /*override*/;
35
36 virtual bool sameItems(::ItemDescriptor::BaseDescriptor const& otherDescriptor, bool compareAux) const /*override*/;
37
38 virtual bool sameItem(::ItemDescriptor::ItemEntry const& otherItem, bool) const /*override*/;
39
40 virtual bool forEachItemUntil(::brstd::function_ref<bool(::Item const&, short)> func) const /*override*/;
41
42 virtual ::std::string getFullName() const /*override*/;
43
44 virtual ::ItemDescriptor::ItemEntry getItem() const /*override*/;
45
46 virtual ::std::map<::std::string, ::std::string> toMap() const /*override*/;
47
48 virtual ::std::optional<::CompoundTag> save() const /*override*/;
49
50 virtual void serialize(::BinaryStream& stream) const /*override*/;
51
52 virtual ::ItemDescriptor::InternalType getType() const /*override*/;
53
54 virtual uint64 getHash() const /*override*/;
55
56 virtual ~ComplexAliasDescriptor() /*override*/ = default;
57 // NOLINTEND
58
59public:
60 // member functions
61 // NOLINTBEGIN
62 MCAPI explicit ComplexAliasDescriptor(::std::string const& fullName);
63 // NOLINTEND
64
65public:
66 // static functions
67 // NOLINTBEGIN
68 MCAPI static ::Bedrock::Result<::std::unique_ptr<::ComplexAliasDescriptor>>
69 deserialize(::ReadOnlyBinaryStream& stream);
70 // NOLINTEND
71
72public:
73 // constructor thunks
74 // NOLINTBEGIN
75 MCAPI void* $ctor(::std::string const& fullName);
76 // NOLINTEND
77
78public:
79 // virtual function thunks
80 // NOLINTBEGIN
81 MCAPI ::std::unique_ptr<::ItemDescriptor::BaseDescriptor> $clone() const;
82
83 MCAPI bool $sameItems(::ItemDescriptor::BaseDescriptor const& otherDescriptor, bool compareAux) const;
84
85 MCAPI bool $sameItem(::ItemDescriptor::ItemEntry const& otherItem, bool) const;
86
87 MCAPI bool $forEachItemUntil(::brstd::function_ref<bool(::Item const&, short)> func) const;
88
89 MCFOLD ::std::string $getFullName() const;
90
91 MCAPI ::ItemDescriptor::ItemEntry $getItem() const;
92
93 MCAPI ::std::map<::std::string, ::std::string> $toMap() const;
94
95 MCAPI ::std::optional<::CompoundTag> $save() const;
96
97 MCAPI void $serialize(::BinaryStream& stream) const;
98
99 MCFOLD ::ItemDescriptor::InternalType $getType() const;
100
101 MCFOLD uint64 $getHash() const;
102
103
104 // NOLINTEND
105
106public:
107 // vftables
108 // NOLINTBEGIN
109 MCAPI static void** $vftable();
110 // NOLINTEND
111};
Definition BinaryStream.h:11
Definition CompoundTag.h:23
Definition Item.h:68
Definition ReadOnlyBinaryStream.h:8
Definition function_ref.h:60
Definition ItemDescriptor.h:57
static MCAPI void ** $vftable()
Definition ItemDescriptor.h:42