LeviLamina
Loading...
Searching...
No Matches
FilterTest.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/shared_types/legacy/FilterSubject.h"
7#include "mc/world/filters/FilterOperator.h"
8
9// auto generated forward declare list
10// clang-format off
12struct FilterContext;
13struct FilterInputs;
15namespace Json { class Value; }
16// clang-format on
17
18class FilterTest {
19public:
20 // FilterTest inner types declare
21 // clang-format off
22 struct Definition;
23 // clang-format on
24
25 // FilterTest inner types define
26 struct Definition {
27 public:
28 // member variables
29 // NOLINTBEGIN
37 // NOLINTEND
38
39 public:
40 // prevent constructor by default
41 Definition& operator=(Definition const&);
42 Definition(Definition const&);
43 Definition();
44
45 public:
46 // member functions
47 // NOLINTBEGIN
48 MCNAPI Definition(
49 ::std::string const& name,
50 ::std::string const& description,
51 ::FilterParamDefinition const* subjectParam,
52 ::FilterParamDefinition const* domainParam,
53 ::FilterParamDefinition const* operatorParam,
54 ::FilterParamDefinition const* valueParam,
55 ::std::function<::std::shared_ptr<::FilterTest>()> factory
56 );
57
58 MCNAPI ~Definition();
59 // NOLINTEND
60
61 public:
62 // constructor thunks
63 // NOLINTBEGIN
64 MCNAPI void* $ctor(
65 ::std::string const& name,
66 ::std::string const& description,
67 ::FilterParamDefinition const* subjectParam,
68 ::FilterParamDefinition const* domainParam,
69 ::FilterParamDefinition const* operatorParam,
70 ::FilterParamDefinition const* valueParam,
71 ::std::function<::std::shared_ptr<::FilterTest>()> factory
72 );
73 // NOLINTEND
74
75 public:
76 // destructor thunk
77 // NOLINTBEGIN
78 MCNAPI void $dtor();
79 // NOLINTEND
80 };
81
82public:
83 // member variables
84 // NOLINTBEGIN
87 // NOLINTEND
88
89public:
90 // prevent constructor by default
91 FilterTest& operator=(FilterTest const&);
92 FilterTest(FilterTest const&);
93 FilterTest();
94
95public:
96 // virtual functions
97 // NOLINTBEGIN
98 virtual ~FilterTest() = default;
99
100 virtual bool setup(::FilterTest::Definition const& definition, ::FilterInputs const& inputs);
101
102 virtual bool evaluate(::FilterContext const& context) const = 0;
103
104 virtual void finalizeParsedValue(::IWorldRegistriesProvider& registries);
105
106 virtual ::std::string_view getName() const = 0;
107
108 virtual ::std::optional<::std::variant<bool, int, float, ::std::string>> getDomain() const;
109
110 virtual ::std::optional<::std::variant<bool, int, float, ::std::string>> getValue() const = 0;
111
112 virtual ::Json::Value _serializeDomain() const;
113
114 virtual ::Json::Value _serializeValue() const = 0;
115 // NOLINTEND
116
117public:
118 // member functions
119 // NOLINTBEGIN
120 MCNAPI ::FilterOperator getOperator() const;
121
122 MCNAPI ::SharedTypes::Legacy::FilterSubject getSubject() const;
123
124 MCNAPI ::Json::Value serialize() const;
125 // NOLINTEND
126
127public:
128 // virtual function thunks
129 // NOLINTBEGIN
131
132 MCNAPI ::std::optional<::std::variant<bool, int, float, ::std::string>> $getDomain() const;
133
134 MCNAPI ::Json::Value $_serializeDomain() const;
135
136
137 // NOLINTEND
138};
MCAPI::Json::Value $_serializeDomain() const
MCAPI ::std::optional<::std::variant< bool, int, float, ::std::string > > $getDomain() const
MCAPI::SharedTypes::Legacy::FilterSubject getSubject() const
MCAPI void $finalizeParsedValue(::IWorldRegistriesProvider &registries)
MCAPI::Json::Value serialize() const
MCAPI::FilterOperator getOperator() const
Definition IWorldRegistriesProvider.h:25
Definition Value.h:16
Definition FilterContext.h:5
Definition FilterInputs.h:14
Definition FilterParamDefinition.h:16
Definition FilterTest.h:26
MCAPI Definition(::std::string const &name, ::std::string const &description, ::FilterParamDefinition const *subjectParam, ::FilterParamDefinition const *domainParam, ::FilterParamDefinition const *operatorParam, ::FilterParamDefinition const *valueParam, ::std::function<::std::shared_ptr<::FilterTest >()> factory)
MCAPI void * $ctor(::std::string const &name, ::std::string const &description, ::FilterParamDefinition const *subjectParam, ::FilterParamDefinition const *domainParam, ::FilterParamDefinition const *operatorParam, ::FilterParamDefinition const *valueParam, ::std::function<::std::shared_ptr<::FilterTest >()> factory)
Definition context.h:5
Definition Alias.h:14