// EXTERNAL INCLUDES
#include <string>
#include <sstream>
+#include <initializer_list>
// INTERNAL INCLUDES
#include <dali/public-api/common/dali-common.h>
* @{
*/
-typedef std::pair< Property::Key, Property::Value > KeyValuePair;
-typedef std::pair<std::string, Property::Value> StringValuePair;
+using KeyValuePair = std::pair<Property::Key, Property::Value>;
+using StringValuePair = std::pair<std::string, Property::Value>;
/**
* @brief A Map of property values, the key type could be String or Property::Index.
class DALI_CORE_API Property::Map
{
public:
-
- typedef std::size_t SizeType;
+ using SizeType = std::size_t;
/**
* @brief Default constructor.
Map();
/**
- * @brief Copy Constructor.
+ * @brief Constructor from initializer_list.
+ *
+ * @SINCE_1_4.17
+ * @param[in] values An initializer_list of pairs of index and value.
+ */
+ Map( const std::initializer_list< KeyValuePair >& values );
+
+ /**
+ * @brief Copy constructor.
*
* @SINCE_1_0.0
* @param[in] other The Map to copy from
Map( const Map& other );
/**
- * @brief Move Constructor.
+ * @brief Move constructor.
*
* @SINCE_1_4.17
* @param[in] other The Map to move from
- * @note The other array is an r-value so becomes invalid and is no longer usable.
+ * @note After the @a other array is used, it becomes invalid and is no longer usable.
*/
Map( Map&& other );
Value& operator[]( Property::Index key );
/**
- * @brief Assignment Operator.
+ * @brief Assignment operator.
*
* @SINCE_1_0.0
* @param[in] other The map to copy from
Map& operator=( const Map& other );
/**
- * @brief Move Assignment Operator.
+ * @brief Move assignment operator.
*
* @SINCE_1_4.17
* @param[in] other The map to move from