LeviLamina
Loading...
Searching...
No Matches
MolangVariableMap.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4#include "mc/deps/core/string/HashedString.h"
5
6// auto generated inclusion list
7#include "mc/util/MolangVariableIndex.h"
8
9// auto generated forward declare list
10// clang-format off
11class HashedString;
12class MolangVariable;
13struct MolangScriptArg;
14// clang-format on
15
16class MolangVariableMap {
17public:
18 // MolangVariableMap inner types define
19 enum class MissingVariableHandling : int {
20 Error = 0,
21 NoError = 1,
22 };
23
24public:
25 // member variables
26 // NOLINTBEGIN
27 ::ll::TypedStorage<8, 24, ::std::vector<short>> mMapFromVariableIndexToVariableArrayOffset;
28 ::ll::TypedStorage<8, 24, ::std::vector<::std::unique_ptr<::MolangVariable>>> mVariables;
29 ::ll::TypedStorage<1, 1, bool> mHasPublicVariables;
30 // NOLINTEND
31
32public:
33 void setMolangVariable(HashedString const& variableName, ::MolangScriptArg const& value) {
34 setMolangVariable(variableName.getHash(), variableName.c_str(), value);
35 }
36
37public:
38 // member functions
39 // NOLINTBEGIN
40 MCAPI MolangVariableMap();
41
42 MCAPI_C MolangVariableMap(::MolangVariableMap&&);
43
44 MCAPI_C MolangVariableMap(::MolangVariableMap const& rhs);
45
46 MCAPI ::MolangVariable* _getOrAddMolangVariable(::MolangVariableIndex molangVariableIndex);
47
48 MCAPI ::MolangVariableMap& clear();
49
50 MCAPI ::MolangScriptArg const& getMolangVariable(uint64 variableNameHash, char const*) const;
51
52 MCAPI ::MolangVariableMap& operator=(::MolangVariableMap&&);
53
54 MCAPI ::MolangVariableMap& operator=(::MolangVariableMap const& rhs);
55
56 MCAPI bool operator==(::MolangVariableMap const& rhs) const;
57
58 MCAPI void setMolangStructMember(
59 ::MolangVariableIndex molangVariableIndex,
60 ::HashedString const& memberNameDepth0,
61 ::MolangScriptArg const& value
62 );
63
64 MCAPI void setMolangVariable(::MolangVariableIndex molangVariableIndex, ::MolangScriptArg const& value);
65
66 MCAPI void setMolangVariable(uint64 variableNameHash, char const* variableName, ::MolangScriptArg const& value);
67
68 MCAPI_C void updatePublicVariables();
69
70 MCAPI ~MolangVariableMap();
71 // NOLINTEND
72
73public:
74 // constructor thunks
75 // NOLINTBEGIN
76 MCAPI void* $ctor();
77
78 MCAPI_C void* $ctor(::MolangVariableMap&&);
79
80 MCAPI_C void* $ctor(::MolangVariableMap const& rhs);
81 // NOLINTEND
82
83public:
84 // destructor thunk
85 // NOLINTBEGIN
86 MCAPI void $dtor();
87 // NOLINTEND
88};
Definition HashedString.h:5
Definition MolangVariable.h:15
Definition MolangScriptArg.h:33