cedric pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=a50edaf17b9f2eda6b2e73339a069c1158c160e4

commit a50edaf17b9f2eda6b2e73339a069c1158c160e4
Author: Xavi Artigas <[email protected]>
Date:   Tue Jan 22 12:59:06 2019 +0000

    eina: refactor eina_value_*_new.
    
    Reviewed-by: Xavi Artigas <[email protected]>
    Differential Revision: https://phab.enlightenment.org/D7701
---
 doc/Doxyfile.in                       |   3 +-
 src/lib/eina/eina_inline_value_util.x | 301 ++++------------------------------
 2 files changed, 35 insertions(+), 269 deletions(-)

diff --git a/doc/Doxyfile.in b/doc/Doxyfile.in
index 436b84d475..8eb5b96096 100644
--- a/doc/Doxyfile.in
+++ b/doc/Doxyfile.in
@@ -1459,7 +1459,8 @@ PREDEFINED             = EINA_MAGIC_DEBUG \
 
 EXPAND_AS_DEFINED      = EINA_VALUE_CONVERT \
                          EINA_VALUE_GET \
-                         EINA_VALUE_INIT
+                         EINA_VALUE_INIT \
+                         EINA_VALUE_NEW
 
 # If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then
 # doxygen's preprocessor will remove all references to function-like macros
diff --git a/src/lib/eina/eina_inline_value_util.x 
b/src/lib/eina/eina_inline_value_util.x
index 6d8583da1c..09a7996087 100644
--- a/src/lib/eina/eina_inline_value_util.x
+++ b/src/lib/eina/eina_inline_value_util.x
@@ -131,277 +131,42 @@ eina_value_type_offset(const Eina_Value_Type *type, 
unsigned int base)
    return base + padding;
 }
 
+/// @brief For internal use only.
+/// @hideinitializer
+#define EINA_VALUE_NEW(Compress_Type, Uppercase_Compress_Type, Type)    \
 /**
- * @brief Create a new #Eina_Value containing the passed parameter
- * @param c The value to use
- * @return The #Eina_Value
- * @since 1.21
- */
-static inline Eina_Value *
-eina_value_uchar_new(unsigned char c)
-{
-   Eina_Value *v;
-
-   v = eina_value_new(EINA_VALUE_TYPE_UCHAR);
-   if (v) eina_value_set(v, c);
-   return v;
-}
-
-/**
- * @brief Create a new #Eina_Value containing the passed parameter
- * @param s The value to use
- * @return The #Eina_Value
- * @since 1.21
- */
-static inline Eina_Value *
-eina_value_ushort_new(unsigned short s)
-{
-   Eina_Value *v;
-
-   v = eina_value_new(EINA_VALUE_TYPE_USHORT);
-   if (v) eina_value_set(v, s);
-   return v;
-}
-
-/**
- * @brief Create a new #Eina_Value containing the passed parameter
- * @param i The value to use
- * @return The #Eina_Value
- * @since 1.21
- */
-static inline Eina_Value *
-eina_value_uint_new(unsigned int i)
-{
-   Eina_Value *v;
-
-   v = eina_value_new(EINA_VALUE_TYPE_UINT);
-   if (v) eina_value_set(v, i);
-   return v;
-}
-
-/**
- * @brief Create a new #Eina_Value containing the passed parameter
- * @param l The value to use
- * @return The #Eina_Value
- * @since 1.21
- */
-static inline Eina_Value *
-eina_value_ulong_new(unsigned long l)
-{
-   Eina_Value *v;
-
-   v = eina_value_new(EINA_VALUE_TYPE_ULONG);
-   if (v) eina_value_set(v, l);
-   return v;
-}
-
-/**
- * @brief Create a new #Eina_Value containing the passed parameter
- * @param i The value to use
- * @return The #Eina_Value
- * @since 1.21
- */
-static inline Eina_Value *
-eina_value_uint64_new(uint64_t i)
-{
-   Eina_Value *v;
-
-   v = eina_value_new(EINA_VALUE_TYPE_UINT64);
-   if (v) eina_value_set(v, i);
-   return v;
-}
-
-/**
- * @brief Create a new #Eina_Value containing the passed parameter
- * @param c The value to use
- * @return The #Eina_Value
- * @since 1.21
- */
-static inline Eina_Value *
-eina_value_char_new(char c)
-{
-   Eina_Value *v;
-
-   v = eina_value_new(EINA_VALUE_TYPE_CHAR);
-   if (v) eina_value_set(v, c);
-   return v;
-}
-
-/**
- * @brief Create a new #Eina_Value containing the passed parameter
- * @param s The value to use
- * @return The #Eina_Value
- * @since 1.21
- */
-static inline Eina_Value *
-eina_value_short_new(short s)
-{
-   Eina_Value *v;
-
-   v = eina_value_new(EINA_VALUE_TYPE_SHORT);
-   if (v) eina_value_set(v, s);
-   return v;
-}
-
-/**
- * @brief Create a new #Eina_Value containing the passed parameter
- * @param i The value to use
- * @return The #Eina_Value
- * @since 1.21
- */
-static inline Eina_Value *
-eina_value_int_new(int i)
-{
-   Eina_Value *v;
-
-   v = eina_value_new(EINA_VALUE_TYPE_INT);
-   if (v) eina_value_set(v, i);
-   return v;
-}
-
-/**
- * @brief Create a new #Eina_Value containing the passed parameter
- * @param l The value to use
- * @return The #Eina_Value
- * @since 1.21
- */
-static inline Eina_Value *
-eina_value_long_new(long l)
-{
-   Eina_Value *v;
-
-   v = eina_value_new(EINA_VALUE_TYPE_LONG);
-   if (v) eina_value_set(v, l);
-   return v;
-}
-
-/**
- * @brief Create a new #Eina_Value containing the passed parameter
- * @param i The value to use
- * @return The #Eina_Value
- * @since 1.21
- */
-static inline Eina_Value *
-eina_value_int64_new(int64_t i)
-{
-   Eina_Value *v;
-
-   v = eina_value_new(EINA_VALUE_TYPE_INT64);
-   if (v) eina_value_set(v, i);
-   return v;
-}
-
-/**
- * @brief Create a new #Eina_Value containing the passed parameter
- * @param f The value to use
- * @return The #Eina_Value
- * @since 1.21
- */
-static inline Eina_Value *
-eina_value_float_new(float f)
-{
-   Eina_Value *v;
-
-   v = eina_value_new(EINA_VALUE_TYPE_FLOAT);
-   if (v) eina_value_set(v, f);
-   return v;
-}
-
-/**
- * @brief Create a new #Eina_Value containing the passed parameter
- * @param d The value to use
- * @return The #Eina_Value
- * @since 1.21
- */
-static inline Eina_Value *
-eina_value_double_new(double d)
-{
-   Eina_Value *v;
-
-   v = eina_value_new(EINA_VALUE_TYPE_DOUBLE);
-   if (v) eina_value_set(v, d);
-   return v;
-}
-
-/**
- * @brief Create a new #Eina_Value containing the passed parameter
- * @param b The value to use
- * @return The #Eina_Value
- * @since 1.21
- */
-static inline Eina_Value *
-eina_value_bool_new(Eina_Bool b)
-{
-   Eina_Value *v;
-
-   v = eina_value_new(EINA_VALUE_TYPE_BOOL);
-   if (v) eina_value_set(v, b);
-   return v;
-}
-
-/**
- * @brief Create a new #Eina_Value containing the passed parameter
- * @param str The value to use
- * @return The #Eina_Value
- * @since 1.21
- */
-static inline Eina_Value *
-eina_value_string_new(const char *str)
-{
-   Eina_Value *v;
-
-   v = eina_value_new(EINA_VALUE_TYPE_STRING);
-   if (v) eina_value_set(v, str);
-   return v;
-}
-
-/**
- * @brief Create a new #Eina_Value containing the passed parameter
- * @param str The value to use
- * @return The #Eina_Value
- * @since 1.21
- */
-static inline Eina_Value *
-eina_value_stringshare_new(const char *str)
-{
-   Eina_Value *v;
-
-   v = eina_value_new(EINA_VALUE_TYPE_STRINGSHARE);
-   if (v) eina_value_set(v, str);
-   return v;
-}
-
-/**
- * @brief Create a new #Eina_Value containing the passed parameter
- * @param t The value to use
- * @return The #Eina_Value
- * @since 1.21
- */
-static inline Eina_Value *
-eina_value_time_new(time_t t)
-{
-   Eina_Value *v;
-
-   v = eina_value_new(EINA_VALUE_TYPE_TIMESTAMP);
-   if (v) eina_value_set(v, t);
-   return v;
+ @brief Create a new #Eina_Value containing the passed parameter
+ @param c The value to use
+ @return The #Eina_Value
+ @since 1.21
+ */                                                                     \
+static inline Eina_Value *                                              \
+eina_value_##Compress_Type##_new(Type c)                                \
+{                                                                       \
+   Eina_Value *v;                                                       \
+                                                                        \
+   v = eina_value_new(EINA_VALUE_TYPE_##Uppercase_Compress_Type);       \
+   if (v) eina_value_set(v, c);                                         \
+   return v;                                                            \
 }
 
-/**
- * @brief Create a new #Eina_Value containing the passed parameter
- * @param err The error code
- * @return The #Eina_Value
- * @since 1.21
- */
-static inline Eina_Value *
-eina_value_error_new(Eina_Error err)
-{
-   Eina_Value *v;
-
-   v = eina_value_new(EINA_VALUE_TYPE_ERROR);
-   if (v) eina_value_set(v, err);
-   return v;
-}
+EINA_VALUE_NEW(uchar, UCHAR, unsigned char);
+EINA_VALUE_NEW(ushort, USHORT, unsigned short);
+EINA_VALUE_NEW(uint, UINT, unsigned int);
+EINA_VALUE_NEW(ulong, ULONG, unsigned long);
+EINA_VALUE_NEW(uint64, UINT64, uint64_t);
+EINA_VALUE_NEW(char, CHAR, char);
+EINA_VALUE_NEW(short, SHORT, short);
+EINA_VALUE_NEW(int, INT, int);
+EINA_VALUE_NEW(long, LONG, long);
+EINA_VALUE_NEW(int64, INT64, int64_t);
+EINA_VALUE_NEW(float, FLOAT, float);
+EINA_VALUE_NEW(double, DOUBLE, double);
+EINA_VALUE_NEW(bool, BOOL, Eina_Bool);
+EINA_VALUE_NEW(string, STRING, const char *);
+EINA_VALUE_NEW(stringshare, STRINGSHARE, const char *);
+EINA_VALUE_NEW(time, TIMESTAMP, time_t);
+EINA_VALUE_NEW(error, ERROR, Eina_Error);
 
 /// @brief For internal use only.
 /// @hideinitializer

-- 


Reply via email to