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