.. index:: pair: class; EE::UI::Models::Variant .. _doxid-class_e_e_1_1_u_i_1_1_models_1_1_variant: class EE::UI::Models::Variant ============================= .. toctree:: :hidden: enum_EE_UI_Models_Variant_Type.rst union_EE_UI_Models_Variant_Storage.rst .. ref-code-block:: cpp :class: doxyrest-overview-code-block #include class Variant { public: // enums enum :ref:`Type`; // unions union :ref:`Storage`; // construction :target:`Variant`(); :target:`Variant`(const std::string& string); :target:`Variant`(std::string&& string); :target:`Variant`(const std::string* string); :target:`Variant`(const :ref:`String`& string); :target:`Variant`(:ref:`String`&& string); :target:`Variant`(const :ref:`String`* string); :target:`Variant`(:ref:`DrawablePtr` drawable); :target:`Variant`(:ref:`UIIcon`* icon); :target:`Variant`(const :ref:`Vector2f`& v); :target:`Variant`(void* data); :target:`Variant`(const :ref:`Rectf`& r); :target:`Variant`(bool val); :target:`Variant`(const :ref:`Float`& val); :target:`Variant`(const int& val); :target:`Variant`(const unsigned int& val); :target:`Variant`(const :ref:`Int64`& val); :target:`Variant`(const :ref:`Uint64`& val); :target:`Variant`(const char* data); :target:`Variant`(const Variant& other); :target:`Variant`(Variant&& other); :target:`~Variant`(); // methods Variant& :target:`operator=`(const Variant& other); Variant& :target:`operator=`(Variant&& other); const std::string& :target:`asStdString`() const; const std::string& :target:`asStdStringPtr`() const; const :ref:`String`& :target:`asString`() const; const :ref:`String`& :target:`asStringPtr`() const; const :ref:`DrawablePtr`& :target:`asDrawable`() const; const bool& :target:`asBool`() const; const :ref:`Float`& :target:`asFloat`() const; const int& :target:`asInt`() const; const unsigned int& :target:`asUint`() const; const :ref:`Int64`& :target:`asInt64`() const; const :ref:`Uint64`& :target:`asUint64`() const; const :ref:`Vector2f`& :target:`asVector2f`() const; const :ref:`Rectf`& :target:`asRectf`() const; const char* :target:`asCStr`() const; :ref:`UIIcon`* :target:`asIcon`() const; void* :target:`asDataPtr`() const; :ref:`Type` :target:`getType`() const; bool :target:`is`(const :ref:`Type`& type) const; bool :target:`isString`() const; bool :target:`isStdStringLike`() const; std::string_view :target:`asStdStringView`() const; void :target:`reset`(); bool :target:`isValid`() const; std::string :target:`toString`() const; bool :target:`operator<`(const Variant& other) const; bool :target:`operator==`(const Variant& other) const; size_t :target:`size`() const; static Variant :target:`fromRef`(const std::string& string); };