MCPcopy Create free account
hub / github.com/Redot-Engine/redot-engine / is_zero

Method is_zero

core/variant/variant.cpp:425–557  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

423}
424
425bool Variant::is_zero() const {
426 switch (type) {
427 case NIL: {
428 return true;
429 }
430
431 // Atomic types.
432 case BOOL: {
433 return !(_data._bool);
434 }
435 case INT: {
436 return _data._int == 0;
437 }
438 case FLOAT: {
439 return _data._float == 0;
440 }
441 case STRING: {
442 return *reinterpret_cast<const String *>(_data._mem) == String();
443 }
444
445 // Math types.
446 case VECTOR2: {
447 return *reinterpret_cast<const Vector2 *>(_data._mem) == Vector2();
448 }
449 case VECTOR2I: {
450 return *reinterpret_cast<const Vector2i *>(_data._mem) == Vector2i();
451 }
452 case RECT2: {
453 return *reinterpret_cast<const Rect2 *>(_data._mem) == Rect2();
454 }
455 case RECT2I: {
456 return *reinterpret_cast<const Rect2i *>(_data._mem) == Rect2i();
457 }
458 case TRANSFORM2D: {
459 return *_data._transform2d == Transform2D();
460 }
461 case VECTOR3: {
462 return *reinterpret_cast<const Vector3 *>(_data._mem) == Vector3();
463 }
464 case VECTOR3I: {
465 return *reinterpret_cast<const Vector3i *>(_data._mem) == Vector3i();
466 }
467 case VECTOR4: {
468 return *reinterpret_cast<const Vector4 *>(_data._mem) == Vector4();
469 }
470 case VECTOR4I: {
471 return *reinterpret_cast<const Vector4i *>(_data._mem) == Vector4i();
472 }
473 case PLANE: {
474 return *reinterpret_cast<const Plane *>(_data._mem) == Plane();
475 }
476 case AABB: {
477 return *_data._aabb == ::AABB();
478 }
479 case QUATERNION: {
480 return *reinterpret_cast<const Quaternion *>(_data._mem) == Quaternion();
481 }
482 case BASIS: {

Callers 5

deserializeMethod · 0.45
saveMethod · 0.45
prepare_reloadMethod · 0.45

Calls 15

RIDClass · 0.85
StringNameClass · 0.70
StringClass · 0.50
Vector2Function · 0.50
Vector2iClass · 0.50
Rect2Class · 0.50
Rect2iClass · 0.50
Transform2DClass · 0.50
Vector3Function · 0.50
Vector3iClass · 0.50
Vector4Class · 0.50
Vector4iClass · 0.50

Tested by 1