Skip to content

Commit 6bab68d

Browse files
committed
Use RequiredParam and RequiredValue in a handful of places in order to test
1 parent 1e02ae8 commit 6bab68d

File tree

8 files changed

+64
-64
lines changed

8 files changed

+64
-64
lines changed

core/io/resource_saver.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,8 +97,8 @@ void ResourceFormatSaver::_bind_methods() {
9797
GDVIRTUAL_BIND(_recognize_path, "resource", "path");
9898
}
9999

100-
Error ResourceSaver::save(const Ref<Resource> &p_resource, const String &p_path, uint32_t p_flags) {
101-
ERR_FAIL_COND_V_MSG(p_resource.is_null(), ERR_INVALID_PARAMETER, vformat("Can't save empty resource to path '%s'.", p_path));
100+
Error ResourceSaver::save(const RequiredParam<Resource> &rp_resource, const String &p_path, uint32_t p_flags) {
101+
EXTRACT_REQUIRED_PTR_OR_FAIL_V_MSG(p_resource, rp_resource, ERR_INVALID_PARAMETER, vformat("Can't save empty resource to path '%s'.", p_path));
102102
String path = p_path;
103103
if (path.is_empty()) {
104104
path = p_resource->get_path();

core/io/resource_saver.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ class ResourceSaver {
8383
FLAG_REPLACE_SUBRESOURCE_PATHS = 64,
8484
};
8585

86-
static Error save(const Ref<Resource> &p_resource, const String &p_path = "", uint32_t p_flags = (uint32_t)FLAG_NONE);
86+
static Error save(const RequiredParam<Resource> &p_resource, const String &p_path = "", uint32_t p_flags = (uint32_t)FLAG_NONE);
8787
static void get_recognized_extensions(const Ref<Resource> &p_resource, List<String> *p_extensions);
8888
static void add_resource_format_saver(Ref<ResourceFormatSaver> p_format_saver, bool p_at_front = false);
8989
static void remove_resource_format_saver(Ref<ResourceFormatSaver> p_format_saver);

scene/animation/tween.cpp

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ void Tween::_stop_internal(bool p_reset) {
9595
}
9696
}
9797

98-
Ref<PropertyTweener> Tween::tween_property(const Object *p_target, const NodePath &p_property, Variant p_to, double p_duration) {
98+
RequiredValue<PropertyTweener> Tween::tween_property(const Object *p_target, const NodePath &p_property, Variant p_to, double p_duration) {
9999
ERR_FAIL_NULL_V(p_target, nullptr);
100100
CHECK_VALID();
101101

@@ -118,7 +118,7 @@ Ref<PropertyTweener> Tween::tween_property(const Object *p_target, const NodePat
118118
return tweener;
119119
}
120120

121-
Ref<IntervalTweener> Tween::tween_interval(double p_time) {
121+
RequiredValue<IntervalTweener> Tween::tween_interval(double p_time) {
122122
CHECK_VALID();
123123

124124
Ref<IntervalTweener> tweener;
@@ -127,7 +127,7 @@ Ref<IntervalTweener> Tween::tween_interval(double p_time) {
127127
return tweener;
128128
}
129129

130-
Ref<CallbackTweener> Tween::tween_callback(const Callable &p_callback) {
130+
RequiredValue<CallbackTweener> Tween::tween_callback(const Callable &p_callback) {
131131
CHECK_VALID();
132132

133133
Ref<CallbackTweener> tweener;
@@ -136,7 +136,7 @@ Ref<CallbackTweener> Tween::tween_callback(const Callable &p_callback) {
136136
return tweener;
137137
}
138138

139-
Ref<MethodTweener> Tween::tween_method(const Callable &p_callback, const Variant p_from, Variant p_to, double p_duration) {
139+
RequiredValue<MethodTweener> Tween::tween_method(const Callable &p_callback, const Variant p_from, Variant p_to, double p_duration) {
140140
CHECK_VALID();
141141

142142
if (!Animation::validate_type_match(p_from, p_to)) {
@@ -149,7 +149,7 @@ Ref<MethodTweener> Tween::tween_method(const Callable &p_callback, const Variant
149149
return tweener;
150150
}
151151

152-
Ref<SubtweenTweener> Tween::tween_subtween(const Ref<Tween> &p_subtween) {
152+
RequiredValue<SubtweenTweener> Tween::tween_subtween(const Ref<Tween> &p_subtween) {
153153
CHECK_VALID();
154154

155155
// Ensure that the subtween being added is not null.
@@ -221,15 +221,15 @@ void Tween::clear() {
221221
tweeners.clear();
222222
}
223223

224-
Ref<Tween> Tween::bind_node(const Node *p_node) {
224+
RequiredValue<Tween> Tween::bind_node(const Node *p_node) {
225225
ERR_FAIL_NULL_V(p_node, this);
226226

227227
bound_node = p_node->get_instance_id();
228228
is_bound = true;
229229
return this;
230230
}
231231

232-
Ref<Tween> Tween::set_process_mode(TweenProcessMode p_mode) {
232+
RequiredValue<Tween> Tween::set_process_mode(TweenProcessMode p_mode) {
233233
process_mode = p_mode;
234234
return this;
235235
}
@@ -238,7 +238,7 @@ Tween::TweenProcessMode Tween::get_process_mode() const {
238238
return process_mode;
239239
}
240240

241-
Ref<Tween> Tween::set_pause_mode(TweenPauseMode p_mode) {
241+
RequiredValue<Tween> Tween::set_pause_mode(TweenPauseMode p_mode) {
242242
pause_mode = p_mode;
243243
return this;
244244
}
@@ -247,7 +247,7 @@ Tween::TweenPauseMode Tween::get_pause_mode() const {
247247
return pause_mode;
248248
}
249249

250-
Ref<Tween> Tween::set_ignore_time_scale(bool p_ignore) {
250+
RequiredValue<Tween> Tween::set_ignore_time_scale(bool p_ignore) {
251251
ignore_time_scale = p_ignore;
252252
return this;
253253
}
@@ -256,13 +256,13 @@ bool Tween::is_ignoring_time_scale() const {
256256
return ignore_time_scale;
257257
}
258258

259-
Ref<Tween> Tween::set_parallel(bool p_parallel) {
259+
RequiredValue<Tween> Tween::set_parallel(bool p_parallel) {
260260
default_parallel = p_parallel;
261261
parallel_enabled = p_parallel;
262262
return this;
263263
}
264264

265-
Ref<Tween> Tween::set_loops(int p_loops) {
265+
RequiredValue<Tween> Tween::set_loops(int p_loops) {
266266
loops = p_loops;
267267
return this;
268268
}
@@ -275,12 +275,12 @@ int Tween::get_loops_left() const {
275275
}
276276
}
277277

278-
Ref<Tween> Tween::set_speed_scale(float p_speed) {
278+
RequiredValue<Tween> Tween::set_speed_scale(float p_speed) {
279279
speed_scale = p_speed;
280280
return this;
281281
}
282282

283-
Ref<Tween> Tween::set_trans(TransitionType p_trans) {
283+
RequiredValue<Tween> Tween::set_trans(TransitionType p_trans) {
284284
default_transition = p_trans;
285285
return this;
286286
}
@@ -289,7 +289,7 @@ Tween::TransitionType Tween::get_trans() const {
289289
return default_transition;
290290
}
291291

292-
Ref<Tween> Tween::set_ease(EaseType p_ease) {
292+
RequiredValue<Tween> Tween::set_ease(EaseType p_ease) {
293293
default_ease = p_ease;
294294
return this;
295295
}
@@ -298,12 +298,12 @@ Tween::EaseType Tween::get_ease() const {
298298
return default_ease;
299299
}
300300

301-
Ref<Tween> Tween::parallel() {
301+
RequiredValue<Tween> Tween::parallel() {
302302
parallel_enabled = true;
303303
return this;
304304
}
305305

306-
Ref<Tween> Tween::chain() {
306+
RequiredValue<Tween> Tween::chain() {
307307
parallel_enabled = false;
308308
return this;
309309
}
@@ -554,7 +554,7 @@ double PropertyTweener::_get_custom_interpolated_value(const Variant &p_value) {
554554
return result;
555555
}
556556

557-
Ref<PropertyTweener> PropertyTweener::from(const Variant &p_value) {
557+
RequiredValue<PropertyTweener> PropertyTweener::from(const Variant &p_value) {
558558
Ref<Tween> tween = _get_tween();
559559
ERR_FAIL_COND_V(tween.is_null(), nullptr);
560560

@@ -568,32 +568,32 @@ Ref<PropertyTweener> PropertyTweener::from(const Variant &p_value) {
568568
return this;
569569
}
570570

571-
Ref<PropertyTweener> PropertyTweener::from_current() {
571+
RequiredValue<PropertyTweener> PropertyTweener::from_current() {
572572
do_continue = false;
573573
return this;
574574
}
575575

576-
Ref<PropertyTweener> PropertyTweener::as_relative() {
576+
RequiredValue<PropertyTweener> PropertyTweener::as_relative() {
577577
relative = true;
578578
return this;
579579
}
580580

581-
Ref<PropertyTweener> PropertyTweener::set_trans(Tween::TransitionType p_trans) {
581+
RequiredValue<PropertyTweener> PropertyTweener::set_trans(Tween::TransitionType p_trans) {
582582
trans_type = p_trans;
583583
return this;
584584
}
585585

586-
Ref<PropertyTweener> PropertyTweener::set_ease(Tween::EaseType p_ease) {
586+
RequiredValue<PropertyTweener> PropertyTweener::set_ease(Tween::EaseType p_ease) {
587587
ease_type = p_ease;
588588
return this;
589589
}
590590

591-
Ref<PropertyTweener> PropertyTweener::set_custom_interpolator(const Callable &p_method) {
591+
RequiredValue<PropertyTweener> PropertyTweener::set_custom_interpolator(const Callable &p_method) {
592592
custom_method = p_method;
593593
return this;
594594
}
595595

596-
Ref<PropertyTweener> PropertyTweener::set_delay(double p_delay) {
596+
RequiredValue<PropertyTweener> PropertyTweener::set_delay(double p_delay) {
597597
delay = p_delay;
598598
return this;
599599
}
@@ -731,7 +731,7 @@ IntervalTweener::IntervalTweener() {
731731
ERR_FAIL_MSG("IntervalTweener can't be created directly. Use the tween_interval() method in Tween.");
732732
}
733733

734-
Ref<CallbackTweener> CallbackTweener::set_delay(double p_delay) {
734+
RequiredValue<CallbackTweener> CallbackTweener::set_delay(double p_delay) {
735735
delay = p_delay;
736736
return this;
737737
}
@@ -781,17 +781,17 @@ CallbackTweener::CallbackTweener() {
781781
ERR_FAIL_MSG("CallbackTweener can't be created directly. Use the tween_callback() method in Tween.");
782782
}
783783

784-
Ref<MethodTweener> MethodTweener::set_delay(double p_delay) {
784+
RequiredValue<MethodTweener> MethodTweener::set_delay(double p_delay) {
785785
delay = p_delay;
786786
return this;
787787
}
788788

789-
Ref<MethodTweener> MethodTweener::set_trans(Tween::TransitionType p_trans) {
789+
RequiredValue<MethodTweener> MethodTweener::set_trans(Tween::TransitionType p_trans) {
790790
trans_type = p_trans;
791791
return this;
792792
}
793793

794-
Ref<MethodTweener> MethodTweener::set_ease(Tween::EaseType p_ease) {
794+
RequiredValue<MethodTweener> MethodTweener::set_ease(Tween::EaseType p_ease) {
795795
ease_type = p_ease;
796796
return this;
797797
}
@@ -912,7 +912,7 @@ bool SubtweenTweener::step(double &r_delta) {
912912
return true;
913913
}
914914

915-
Ref<SubtweenTweener> SubtweenTweener::set_delay(double p_delay) {
915+
RequiredValue<SubtweenTweener> SubtweenTweener::set_delay(double p_delay) {
916916
delay = p_delay;
917917
return this;
918918
}

scene/animation/tween.h

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -144,11 +144,11 @@ class Tween : public RefCounted {
144144
public:
145145
virtual String to_string() override;
146146

147-
Ref<PropertyTweener> tween_property(const Object *p_target, const NodePath &p_property, Variant p_to, double p_duration);
148-
Ref<IntervalTweener> tween_interval(double p_time);
149-
Ref<CallbackTweener> tween_callback(const Callable &p_callback);
150-
Ref<MethodTweener> tween_method(const Callable &p_callback, const Variant p_from, Variant p_to, double p_duration);
151-
Ref<SubtweenTweener> tween_subtween(const Ref<Tween> &p_subtween);
147+
RequiredValue<PropertyTweener> tween_property(const Object *p_target, const NodePath &p_property, Variant p_to, double p_duration);
148+
RequiredValue<IntervalTweener> tween_interval(double p_time);
149+
RequiredValue<CallbackTweener> tween_callback(const Callable &p_callback);
150+
RequiredValue<MethodTweener> tween_method(const Callable &p_callback, const Variant p_from, Variant p_to, double p_duration);
151+
RequiredValue<SubtweenTweener> tween_subtween(const Ref<Tween> &p_subtween);
152152
void append(Ref<Tweener> p_tweener);
153153

154154
bool custom_step(double p_delta);
@@ -161,25 +161,25 @@ class Tween : public RefCounted {
161161
bool is_valid();
162162
void clear();
163163

164-
Ref<Tween> bind_node(const Node *p_node);
165-
Ref<Tween> set_process_mode(TweenProcessMode p_mode);
164+
RequiredValue<Tween> bind_node(const Node *p_node);
165+
RequiredValue<Tween> set_process_mode(TweenProcessMode p_mode);
166166
TweenProcessMode get_process_mode() const;
167-
Ref<Tween> set_pause_mode(TweenPauseMode p_mode);
167+
RequiredValue<Tween> set_pause_mode(TweenPauseMode p_mode);
168168
TweenPauseMode get_pause_mode() const;
169-
Ref<Tween> set_ignore_time_scale(bool p_ignore = true);
169+
RequiredValue<Tween> set_ignore_time_scale(bool p_ignore = true);
170170
bool is_ignoring_time_scale() const;
171171

172-
Ref<Tween> set_parallel(bool p_parallel);
173-
Ref<Tween> set_loops(int p_loops);
172+
RequiredValue<Tween> set_parallel(bool p_parallel);
173+
RequiredValue<Tween> set_loops(int p_loops);
174174
int get_loops_left() const;
175-
Ref<Tween> set_speed_scale(float p_speed);
176-
Ref<Tween> set_trans(TransitionType p_trans);
175+
RequiredValue<Tween> set_speed_scale(float p_speed);
176+
RequiredValue<Tween> set_trans(TransitionType p_trans);
177177
TransitionType get_trans() const;
178-
Ref<Tween> set_ease(EaseType p_ease);
178+
RequiredValue<Tween> set_ease(EaseType p_ease);
179179
EaseType get_ease() const;
180180

181-
Ref<Tween> parallel();
182-
Ref<Tween> chain();
181+
RequiredValue<Tween> parallel();
182+
RequiredValue<Tween> chain();
183183

184184
static real_t run_equation(TransitionType p_trans_type, EaseType p_ease_type, real_t t, real_t b, real_t c, real_t d);
185185
static Variant interpolate_variant(const Variant &p_initial_val, const Variant &p_delta_val, double p_time, double p_duration, Tween::TransitionType p_trans, Tween::EaseType p_ease);
@@ -204,13 +204,13 @@ class PropertyTweener : public Tweener {
204204
double _get_custom_interpolated_value(const Variant &p_value);
205205

206206
public:
207-
Ref<PropertyTweener> from(const Variant &p_value);
208-
Ref<PropertyTweener> from_current();
209-
Ref<PropertyTweener> as_relative();
210-
Ref<PropertyTweener> set_trans(Tween::TransitionType p_trans);
211-
Ref<PropertyTweener> set_ease(Tween::EaseType p_ease);
212-
Ref<PropertyTweener> set_custom_interpolator(const Callable &p_method);
213-
Ref<PropertyTweener> set_delay(double p_delay);
207+
RequiredValue<PropertyTweener> from(const Variant &p_value);
208+
RequiredValue<PropertyTweener> from_current();
209+
RequiredValue<PropertyTweener> as_relative();
210+
RequiredValue<PropertyTweener> set_trans(Tween::TransitionType p_trans);
211+
RequiredValue<PropertyTweener> set_ease(Tween::EaseType p_ease);
212+
RequiredValue<PropertyTweener> set_custom_interpolator(const Callable &p_method);
213+
RequiredValue<PropertyTweener> set_delay(double p_delay);
214214

215215
void set_tween(const Ref<Tween> &p_tween) override;
216216
void start() override;
@@ -260,7 +260,7 @@ class CallbackTweener : public Tweener {
260260
GDCLASS(CallbackTweener, Tweener);
261261

262262
public:
263-
Ref<CallbackTweener> set_delay(double p_delay);
263+
RequiredValue<CallbackTweener> set_delay(double p_delay);
264264

265265
bool step(double &r_delta) override;
266266

@@ -281,9 +281,9 @@ class MethodTweener : public Tweener {
281281
GDCLASS(MethodTweener, Tweener);
282282

283283
public:
284-
Ref<MethodTweener> set_trans(Tween::TransitionType p_trans);
285-
Ref<MethodTweener> set_ease(Tween::EaseType p_ease);
286-
Ref<MethodTweener> set_delay(double p_delay);
284+
RequiredValue<MethodTweener> set_trans(Tween::TransitionType p_trans);
285+
RequiredValue<MethodTweener> set_ease(Tween::EaseType p_ease);
286+
RequiredValue<MethodTweener> set_delay(double p_delay);
287287

288288
void set_tween(const Ref<Tween> &p_tween) override;
289289
bool step(double &r_delta) override;
@@ -316,7 +316,7 @@ class SubtweenTweener : public Tweener {
316316
void start() override;
317317
bool step(double &r_delta) override;
318318

319-
Ref<SubtweenTweener> set_delay(double p_delay);
319+
RequiredValue<SubtweenTweener> set_delay(double p_delay);
320320

321321
SubtweenTweener(const Ref<Tween> &p_subtween);
322322
SubtweenTweener();

scene/main/node.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2648,7 +2648,7 @@ void Node::_propagate_replace_owner(Node *p_owner, Node *p_by_owner) {
26482648
data.blocked--;
26492649
}
26502650

2651-
Ref<Tween> Node::create_tween() {
2651+
RequiredValue<Tween> Node::create_tween() {
26522652
ERR_THREAD_GUARD_V(Ref<Tween>());
26532653

26542654
SceneTree *tree = data.tree;

scene/main/node.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -508,7 +508,7 @@ class Node : public Object {
508508

509509
InternalMode get_internal_mode() const;
510510

511-
void add_child(Node *p_child, bool p_force_readable_name = false, InternalMode p_internal = INTERNAL_MODE_DISABLED);
511+
void add_child(const RequiredParam<Node> &rp_child, bool p_force_readable_name = false, InternalMode p_internal = INTERNAL_MODE_DISABLED);
512512
void add_sibling(Node *p_sibling, bool p_force_readable_name = false);
513513
void remove_child(Node *p_child);
514514

@@ -604,7 +604,7 @@ class Node : public Object {
604604
}
605605
}
606606

607-
Ref<Tween> create_tween();
607+
RequiredValue<Tween> create_tween();
608608

609609
void print_tree();
610610
void print_tree_pretty();

scene/main/scene_tree.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1744,7 +1744,7 @@ Ref<SceneTreeTimer> SceneTree::create_timer(double p_delay_sec, bool p_process_a
17441744
return stt;
17451745
}
17461746

1747-
Ref<Tween> SceneTree::create_tween() {
1747+
RequiredValue<Tween> SceneTree::create_tween() {
17481748
_THREAD_SAFE_METHOD_
17491749
Ref<Tween> tween;
17501750
tween.instantiate(this);

scene/main/scene_tree.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -428,7 +428,7 @@ class SceneTree : public MainLoop {
428428
void unload_current_scene();
429429

430430
Ref<SceneTreeTimer> create_timer(double p_delay_sec, bool p_process_always = true, bool p_process_in_physics = false, bool p_ignore_time_scale = false);
431-
Ref<Tween> create_tween();
431+
RequiredValue<Tween> create_tween();
432432
void remove_tween(const Ref<Tween> &p_tween);
433433
TypedArray<Tween> get_processed_tweens();
434434

0 commit comments

Comments
 (0)