Skip to content

Commit bcac96c

Browse files
committed
Add missing int→Variant conversions
1 parent 2dfe792 commit bcac96c

File tree

2 files changed

+29
-1
lines changed

2 files changed

+29
-1
lines changed

include/godot_cpp/variant/variant.hpp

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -154,10 +154,18 @@ class Variant {
154154
Variant(int64_t v);
155155
Variant(int32_t v) :
156156
Variant(static_cast<int64_t>(v)) {}
157-
Variant(uint32_t v) :
157+
Variant(int16_t v) :
158+
Variant(static_cast<int64_t>(v)) {}
159+
Variant(int8_t v) :
158160
Variant(static_cast<int64_t>(v)) {}
159161
Variant(uint64_t v) :
160162
Variant(static_cast<int64_t>(v)) {}
163+
Variant(uint32_t v) :
164+
Variant(static_cast<int64_t>(v)) {}
165+
Variant(uint16_t v) :
166+
Variant(static_cast<int64_t>(v)) {}
167+
Variant(uint8_t v) :
168+
Variant(static_cast<int64_t>(v)) {}
161169
Variant(double v);
162170
Variant(float v) :
163171
Variant((double)v) {}
@@ -209,8 +217,12 @@ class Variant {
209217
operator bool() const;
210218
operator int64_t() const;
211219
operator int32_t() const;
220+
operator int16_t() const;
221+
operator int8_t() const;
212222
operator uint64_t() const;
213223
operator uint32_t() const;
224+
operator uint16_t() const;
225+
operator uint8_t() const;
214226
operator double() const;
215227
operator float() const;
216228
operator String() const;

src/variant/variant.cpp

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -268,6 +268,14 @@ Variant::operator int32_t() const {
268268
return static_cast<int32_t>(operator int64_t());
269269
}
270270

271+
Variant::operator int16_t() const {
272+
return static_cast<int16_t>(operator int64_t());
273+
}
274+
275+
Variant::operator int8_t() const {
276+
return static_cast<int8_t>(operator int64_t());
277+
}
278+
271279
Variant::operator uint64_t() const {
272280
return static_cast<uint64_t>(operator int64_t());
273281
}
@@ -276,6 +284,14 @@ Variant::operator uint32_t() const {
276284
return static_cast<uint32_t>(operator int64_t());
277285
}
278286

287+
Variant::operator uint16_t() const {
288+
return static_cast<uint16_t>(operator int64_t());
289+
}
290+
291+
Variant::operator uint8_t() const {
292+
return static_cast<uint8_t>(operator int64_t());
293+
}
294+
279295
Variant::operator double() const {
280296
double result;
281297
to_type_constructor[FLOAT](&result, _native_ptr());

0 commit comments

Comments
 (0)