LeviLamina
Loading...
Searching...
No Matches
ConstantExpression.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/molang/MolangVersion.h"
7#include "mc/util/molang/ExpressionNode.h"
8#include "mc/util/molang/ExpressionOp.h"
9#include "mc/util/molang/IComplexExpression.h"
10
11// auto generated forward declare list
12// clang-format off
13class HashedString;
14class RenderParams;
15struct MolangScriptArg;
16namespace Json { class Value; }
17namespace Molang::details { class ExpressionNode; }
18// clang-format on
19
20namespace Molang::details {
21
23public:
24 // member variables
25 // NOLINTBEGIN
27 // NOLINTEND
28
29public:
30 // prevent constructor by default
31 ConstantExpression& operator=(ConstantExpression const&);
34
35public:
36 // virtual functions
37 // NOLINTBEGIN
38 // vIndex: 1
39 virtual ::std::unique_ptr<::Molang::details::IComplexExpression> clone() const /*override*/;
40
41 // vIndex: 2
42 virtual ::MolangScriptArg const& evalGeneric(::RenderParams&) const /*override*/;
43
44 // vIndex: 3
45 virtual bool isInitialized() const /*override*/;
46
47 // vIndex: 4
48 virtual ::Json::Value toJson() const /*override*/;
49
50 // vIndex: 5
51 virtual ::std::string getExpressionString() const /*override*/;
52
53 // vIndex: 6
54 virtual ::MolangVersion getMolangVersion() const /*override*/;
55
56 // vIndex: 7
57 virtual void
58 replaceResourceVariables(::std::unordered_map<::HashedString, ::ExpressionNode::ResourceReference>&) /*override*/;
59
60 // vIndex: 8
61 virtual void
62 replaceArrayVariables(::std::unordered_map<::HashedString, ::Molang::details::ExpressionNode>&) /*override*/;
63
64 // vIndex: 9
65 virtual void validateArrayVariables() const /*override*/;
66
67 // vIndex: 10
68 virtual bool isValid() const /*override*/;
69
70 // vIndex: 11
71 virtual bool isConstantValue() const /*override*/;
72
73 // vIndex: 12
74 virtual bool hasVariableAssignments() const /*override*/;
75
76 // vIndex: 13
77 virtual ::ExpressionOp getOp() const /*override*/;
78
79 // vIndex: 14
80 virtual bool needsToCompile() const /*override*/;
81
82 // vIndex: 15
83 virtual ::std::optional<::MolangScriptArg> getValueIfConstant() const /*override*/;
84
85 // vIndex: 16
86 virtual ::Molang::details::ExpressionNode* getSource() /*override*/;
87
88 // vIndex: 0
89 virtual ~ConstantExpression() /*override*/ = default;
90 // NOLINTEND
91
92public:
93 // virtual function thunks
94 // NOLINTBEGIN
95 MCNAPI ::std::unique_ptr<::Molang::details::IComplexExpression> $clone() const;
96
97 MCNAPI ::MolangScriptArg const& $evalGeneric(::RenderParams&) const;
98
99 MCNAPI bool $isInitialized() const;
100
101 MCNAPI ::Json::Value $toJson() const;
102
103 MCNAPI ::std::string $getExpressionString() const;
104
105 MCNAPI ::MolangVersion $getMolangVersion() const;
106
107 MCNAPI void $replaceResourceVariables(::std::unordered_map<::HashedString, ::ExpressionNode::ResourceReference>&);
108
109 MCNAPI void $replaceArrayVariables(::std::unordered_map<::HashedString, ::Molang::details::ExpressionNode>&);
110
111 MCNAPI void $validateArrayVariables() const;
112
113 MCNAPI bool $isValid() const;
114
115 MCNAPI bool $isConstantValue() const;
116
117 MCNAPI bool $hasVariableAssignments() const;
118
119 MCNAPI ::ExpressionOp $getOp() const;
120
121 MCNAPI bool $needsToCompile() const;
122
123 MCNAPI ::std::optional<::MolangScriptArg> $getValueIfConstant() const;
124
125 MCNAPI ::Molang::details::ExpressionNode* $getSource();
126 // NOLINTEND
127
128public:
129 // vftables
130 // NOLINTBEGIN
131 MCNAPI static void** $vftable();
132 // NOLINTEND
133};
134
135} // namespace Molang::details
Definition ExpressionNode.h:27
Definition HashedString.h:5
Definition ConstantExpression.h:22
MCAPI bool $hasVariableAssignments() const
static MCAPI void ** $vftable()
MCAPI void $validateArrayVariables() const
MCAPI::MolangScriptArg const & $evalGeneric(::RenderParams &) const
MCAPI ::std::optional<::MolangScriptArg > $getValueIfConstant() const
MCAPI::Molang::details::ExpressionNode * $getSource()
MCAPI ::std::unique_ptr<::Molang::details::IComplexExpression > $clone() const
MCAPI void $replaceArrayVariables(::std::unordered_map<::HashedString, ::Molang::details::ExpressionNode > &)
MCAPI::ExpressionOp $getOp() const
MCAPI void $replaceResourceVariables(::std::unordered_map<::HashedString, ::ExpressionNode::ResourceReference > &)
MCAPI::MolangVersion $getMolangVersion() const
MCAPI::Json::Value $toJson() const
MCAPI::std::string $getExpressionString() const
Definition IComplexExpression.h:21
Definition RenderParams.h:30
Definition MolangScriptArg.h:33
Definition Alias.h:14