3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/deps/core/string/HashedString.h"
7#include "mc/deps/shared_types/legacy/BlockDescriptor.h"
8#include "mc/molang/MolangVersion.h"
9#include "mc/platform/threading/SpinLockImpl.h"
17namespace cereal {
struct ReflectionCtx; }
39 ::ll::TypedStorage<8, 48, ::HashedString> mName;
40 ::ll::TypedStorage<8, 40, ::SharedTypes::Legacy::BlockDescriptor::Compound> mState;
90 enum class CompareType :
int {
101 ::ll::TypedStorage<8, 8, ::BlockDescriptor&> mBlockDescriptor;
120 ::ll::TypedStorage<8, 8, ::BlockDescriptor::ResolveHelper> mResolveHelper;
121 ::ll::TypedStorage<8, 48, ::HashedString> mBlockName;
122 ::ll::TypedStorage<1, 1, bool> mIsComplexAlias;
123 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::ExpressionNode>> mTags;
124 ::ll::TypedStorage<8, 24, ::std::vector<::BlockDescriptor::State>> mRawStates;
125 ::ll::TypedStorage<8, 24, ::std::vector<::BlockDescriptor::ResolvedState>> mResolvedStates;
126 ::ll::TypedStorage<4, 4, ::BlockDescriptor::CompareType> mCompareType;
127 ::ll::TypedStorage<1, 1, bool> mContentLogOnError;
128 ::ll::TypedStorage<8, 8, ::Block const*> mBlock;
129 ::ll::TypedStorage<1, 1, bool> mValid;
130 ::ll::TypedStorage<1, 1, bool> mIsDeferred;
131 ::ll::TypedStorage<8, 32, ::SpinLockImpl> mLock;
147 MCNAPI
BlockDescriptor(::std::string
const& name, ::std::vector<::BlockDescriptor::State>&& states);
177 MCNAPI
static bool anyMatch(::std::vector<::BlockDescriptor>
const& blockDescriptors,
::Block const& block);
183 MCNAPI static ::BlockDescriptor
210 MCNAPI
void*
$ctor(::std::string
const& name, ::std::vector<::BlockDescriptor::State>&& states);
Definition BlockDescriptor.h:97
MCAPI void resolve(bool logInvalidBlocks)
Definition BlockDescriptor.h:75
Definition BlockDescriptor.h:20
static MCAPI bool anyMatch(::std::vector<::BlockDescriptor > const &blockDescriptors, ::Block const &block)
MCAPI void operator=(::BlockDescriptor &&rhs)
MCAPI bool _statesMatch(::Block const &block) const
MCAPI bool matches(::Block const &block) const
static MCAPI ::BlockDescriptor fromCompoundTag(::CompoundTag const &tag)
MCAPI void * $ctor(::std::string const &name, ::std::vector<::BlockDescriptor::State > &&states)
MCAPI bool matches(::BlockDescriptor const &otherDescriptor) const
MCAPI void * $ctor(::SharedTypes::Legacy::BlockDescriptor desc)
MCAPI void * $ctor(::HashedString const &fullName)
MCAPI void * $ctor(::BlockDescriptor &&rhs)
static MCAPI ::std::add_lvalue_reference_t< char const[]> JSON_STATES_FIELD()
static MCAPI ::BlockDescriptor fromTagExpression(::std::string const &tagExpression, ::MolangVersion molangVersion)
MCAPI ::std::unique_ptr<::CompoundTag > toCompoundTag() const
MCAPI::Block const & getBlockOrUnknownBlock() const
MCAPI BlockDescriptor(::BlockDescriptor const &rhs)
MCAPI void operator=(::BlockDescriptor const &rhs)
MCAPI::BlockDescriptor::CompareType const & getCompareType() const
MCAPI void * $ctor(::BlockDescriptor const &rhs)
MCAPI BlockDescriptor(::SharedTypes::Legacy::BlockDescriptor desc)
MCAPI BlockDescriptor(::std::string const &name, ::std::vector<::BlockDescriptor::State > &&states)
MCAPI bool _anyTagsMatch(::Block const &block) const
MCAPI BlockDescriptor(::BlockDescriptor &&rhs)
static MCAPI ::std::add_lvalue_reference_t< char const[]> JSON_TAGS_FIELD()
static MCAPI void bindType(::cereal::ReflectionCtx &ctx)
MCAPI BlockDescriptor(::HashedString const &fullName)
MCAPI::Block const * tryGetBlock() const
MCAPI void _resolve(bool logInvalidBlocks) const
static MCAPI ::std::add_lvalue_reference_t< char const[]> JSON_NAME_FIELD()
Definition CompoundTag.h:13
Definition ExpressionNode.h:27
Definition HashedString.h:5
Definition BlockDescriptor.h:35
MCAPI::BlockDescriptor::State & operator=(::BlockDescriptor::State const &)
MCAPI void * $ctor(::HashedString name, ::std::string const &stringState)
MCAPI State(::HashedString name, ::std::string const &stringState)
MCAPI void * $ctor(::HashedString name, ::SharedTypes::Legacy::BlockDescriptor::Compound state)
MCAPI State(::HashedString name, ::SharedTypes::Legacy::BlockDescriptor::Compound state)
Definition BlockDescriptor.h:15
Definition BlockDescriptor.h:7
Definition ReflectionCtx.h:11