Make conversions from math types to String explicit, to avoid accidental conversions.

This commit is contained in:
Lukas Tenbrink 2025-06-09 01:58:18 +02:00
parent 9e02194297
commit ed836df150
25 changed files with 55 additions and 55 deletions

View file

@ -441,5 +441,5 @@ Variant AABB::intersects_ray_bind(const Vector3 &p_from, const Vector3 &p_dir) c
}
AABB::operator String() const {
return "[P: " + position.operator String() + ", S: " + size + "]";
return "[P: " + String(position) + ", S: " + String(size) + "]";
}

View file

@ -131,7 +131,7 @@ struct [[nodiscard]] AABB {
return position + (size * 0.5f);
}
operator String() const;
explicit operator String() const;
AABB() = default;
constexpr AABB(const Vector3 &p_pos, const Vector3 &p_size) :

View file

@ -149,7 +149,7 @@ struct [[nodiscard]] Basis {
Basis slerp(const Basis &p_to, real_t p_weight) const;
void rotate_sh(real_t *p_values);
operator String() const;
explicit operator String() const;
/* create / set */

View file

@ -220,7 +220,7 @@ struct [[nodiscard]] Color {
static Color from_rgba8(int64_t p_r8, int64_t p_g8, int64_t p_b8, int64_t p_a8 = 255);
constexpr bool operator<(const Color &p_color) const; // Used in set keys.
operator String() const;
explicit operator String() const;
// For the binder.
_FORCE_INLINE_ void set_r8(int32_t r8) { r = (CLAMP(r8, 0, 255) / 255.0f); }

View file

@ -201,7 +201,7 @@ bool Face3::intersects_aabb(const AABB &p_aabb) const {
}
Face3::operator String() const {
return String() + vertex[0] + ", " + vertex[1] + ", " + vertex[2];
return String() + String(vertex[0]) + ", " + String(vertex[1]) + ", " + String(vertex[2]);
}
void Face3::project_range(const Vector3 &p_normal, const Transform3D &p_transform, real_t &r_min, real_t &r_max) const {

View file

@ -76,7 +76,7 @@ struct [[nodiscard]] Face3 {
bool intersects_aabb(const AABB &p_aabb) const;
_FORCE_INLINE_ bool intersects_aabb2(const AABB &p_aabb) const;
operator String() const;
explicit operator String() const;
Face3() = default;
constexpr Face3(const Vector3 &p_v1, const Vector3 &p_v2, const Vector3 &p_v3) :

View file

@ -78,7 +78,7 @@ struct [[nodiscard]] Plane {
constexpr bool operator==(const Plane &p_plane) const;
constexpr bool operator!=(const Plane &p_plane) const;
operator String() const;
explicit operator String() const;
Plane() = default;
constexpr Plane(real_t p_a, real_t p_b, real_t p_c, real_t p_d) :

View file

@ -127,7 +127,7 @@ struct [[nodiscard]] Projection {
Vector4 xform(const Vector4 &p_vec4) const;
Vector4 xform_inv(const Vector4 &p_vec4) const;
operator String() const;
explicit operator String() const;
void scale_translate_to_fit(const AABB &p_aabb);
void add_jitter_offset(const Vector2 &p_offset);

View file

@ -115,7 +115,7 @@ struct [[nodiscard]] Quaternion {
constexpr bool operator==(const Quaternion &p_quaternion) const;
constexpr bool operator!=(const Quaternion &p_quaternion) const;
operator String() const;
explicit operator String() const;
constexpr Quaternion() :
x(0), y(0), z(0), w(1) {}

View file

@ -358,7 +358,7 @@ struct [[nodiscard]] Rect2 {
return position + size;
}
operator String() const;
explicit operator String() const;
operator Rect2i() const;
Rect2() = default;

View file

@ -34,7 +34,7 @@
#include "core/string/ustring.h"
Rect2i::operator String() const {
return "[P: " + position.operator String() + ", S: " + size + "]";
return "[P: " + String(position) + ", S: " + String(size) + "]";
}
Rect2i::operator Rect2() const {

View file

@ -223,7 +223,7 @@ struct [[nodiscard]] Rect2i {
return position + size;
}
operator String() const;
explicit operator String() const;
operator Rect2() const;
Rect2i() = default;

View file

@ -130,7 +130,7 @@ struct [[nodiscard]] Transform2D {
_FORCE_INLINE_ Vector<Vector2> xform(const Vector<Vector2> &p_array) const;
_FORCE_INLINE_ Vector<Vector2> xform_inv(const Vector<Vector2> &p_array) const;
operator String() const;
explicit operator String() const;
constexpr Transform2D(real_t p_xx, real_t p_xy, real_t p_yx, real_t p_yy, real_t p_ox, real_t p_oy) :
columns{

View file

@ -122,7 +122,7 @@ struct [[nodiscard]] Transform3D {
origin.z = p_tz;
}
operator String() const;
explicit operator String() const;
Transform3D() = default;
constexpr Transform3D(const Basis &p_basis, const Vector3 &p_origin = Vector3()) :

View file

@ -182,7 +182,7 @@ struct [[nodiscard]] Vector2 {
Vector2 clampf(real_t p_min, real_t p_max) const;
real_t aspect() const { return width / height; }
operator String() const;
explicit operator String() const;
operator Vector2i() const;
// NOLINTBEGIN(cppcoreguidelines-pro-type-member-init)

View file

@ -139,7 +139,7 @@ struct [[nodiscard]] Vector2i {
Vector2i snapped(const Vector2i &p_step) const;
Vector2i snappedi(int32_t p_step) const;
operator String() const;
explicit operator String() const;
operator Vector2() const;
// NOLINTBEGIN(cppcoreguidelines-pro-type-member-init)

View file

@ -186,7 +186,7 @@ struct [[nodiscard]] Vector3 {
constexpr bool operator>(const Vector3 &p_v) const;
constexpr bool operator>=(const Vector3 &p_v) const;
operator String() const;
explicit operator String() const;
operator Vector3i() const;
constexpr Vector3() :

View file

@ -130,7 +130,7 @@ struct [[nodiscard]] Vector3i {
constexpr bool operator>(const Vector3i &p_v) const;
constexpr bool operator>=(const Vector3i &p_v) const;
operator String() const;
explicit operator String() const;
operator Vector3() const;
constexpr Vector3i() :

View file

@ -143,7 +143,7 @@ struct [[nodiscard]] Vector4 {
constexpr bool operator>=(const Vector4 &p_vec4) const;
constexpr bool operator<=(const Vector4 &p_vec4) const;
operator String() const;
explicit operator String() const;
operator Vector4i() const;
constexpr Vector4() :

View file

@ -132,7 +132,7 @@ struct [[nodiscard]] Vector4i {
constexpr bool operator>(const Vector4i &p_v) const;
constexpr bool operator>=(const Vector4i &p_v) const;
operator String() const;
explicit operator String() const;
operator Vector4() const;
constexpr Vector4i() :