Eina_Value_Type_Group(3)

NAME
Eina_Value_Type_Group - Generic Value Type management

SYNOPSIS

  Data Structures
struct _Eina_Value_Type
API to access values.

  Macros
#define EINA_VALUE_TYPE_VERSION (1)
Current API version, used to validate type.

  Functions
EINA_API const char * eina_value_type_name_get (const Eina_Value_Type *type)
Queries type name.
EINA_API Eina_Bool eina_value_type_check (const Eina_Value_Type *type)
Checks if type is valid.
static Eina_Bool eina_value_type_setup (const Eina_Value_Type *type, void *mem)
Initializes memory using type descriptor.
static Eina_Bool eina_value_type_flush (const Eina_Value_Type *type, void *mem)
Flushes (clears) memory using type descriptor.
static Eina_Bool eina_value_type_copy (const Eina_Value_Type *type, const void *src, void *dst)
Copies memory using type descriptor.
static int eina_value_type_compare (const Eina_Value_Type *type, const void *a, const void *b)
Compares memory using type descriptor.
static Eina_Bool eina_value_type_convert_to (const Eina_Value_Type *type, const Eina_Value_Type *convert, const void *type_mem, void *convert_mem)
Converts memory using type descriptor.
static Eina_Bool eina_value_type_convert_from (const Eina_Value_Type *type, const Eina_Value_Type *convert, void *type_mem, const void *convert_mem)
Converts memory using type descriptor.
static Eina_Bool eina_value_type_vset (const Eina_Value_Type *type, void *mem, va_list args)
Sets memory using type descriptor and variable argument.
static Eina_Bool eina_value_type_pset (const Eina_Value_Type *type, void *mem, const void *ptr)
Sets memory using type descriptor and pointer.
static Eina_Bool eina_value_type_pget (const Eina_Value_Type *type, const void *mem, void *ptr)
Gets memory using type descriptor.

Detailed Description

Function Documentation

  EINA_API const char* eina_value_type_name_get (const Eina_Value_Type * type)

Queries type name.

Parameters
    type type reference.

Returns
    string or NULL if type is invalid.

Since
    1.2

References EINA_SAFETY_ON_FALSE_RETURN_VAL, and eina_value_type_check().

  EINA_API Eina_Bool eina_value_type_check (const Eina_Value_Type * type)

Checks if type is valid.

Parameters
    type Type reference.

Returns
    EINA_TRUE if valid, EINA_FALSE otherwise.

A type is invalid if it's NULL or if version field is not the same as runtime EINA_VALUE_TYPE_VERSION.

Since
    1.2

References EINA_FALSE, EINA_SAFETY_ON_NULL_RETURN_VAL, and EINA_VALUE_TYPE_VERSION.

Referenced by eina_value_array_new(), eina_value_convert(), eina_value_copy(), eina_value_hash_new(), eina_value_list_new(), eina_value_to_string(), and eina_value_type_name_get().

  static Eina_Bool eina_value_type_setup (const Eina_Value_Type * type, void * mem) [inline], [static]

Initializes memory using type descriptor.

Parameters
    type type reference.
    mem memory to operate, must be of size type->value_size.

Returns
    EINA_TRUE on success, EINA_FALSE otherwise.

Since
    1.2

  static Eina_Bool eina_value_type_flush (const Eina_Value_Type * type, void * mem) [inline], [static]

Flushes (clears) memory using type descriptor.

Parameters
    type type reference.
    mem memory to operate, must be of size type->value_size.

Returns
    EINA_TRUE on success, EINA_FALSE otherwise.

Since
    1.2

  static Eina_Bool eina_value_type_copy (const Eina_Value_Type * type, const void * src, void * dst) [inline], [static]

Copies memory using type descriptor.

Parameters
    type type reference.
    src memory to operate, must be of size type->value_size.
    dst memory to operate, must be of size type->value_size.

Returns
    EINA_TRUE on success, EINA_FALSE otherwise.

Since
    1.2

  static int eina_value_type_compare (const Eina_Value_Type * type, const void * a, const void * b) [inline], [static]

Compares memory using type descriptor.

Parameters
    type type reference.
    a memory to operate, must be of size type->value_size.
    b memory to operate, must be of size type->value_size.

Returns
    less than zero if a < b, greater than zero if a > b, zero if equal.

Since
    1.2

  static Eina_Bool eina_value_type_convert_to (const Eina_Value_Type * type, const Eina_Value_Type * convert, const void * type_mem, void * convert_mem) [inline], [static]

Converts memory using type descriptor.

Parameters
    type type reference of the source.
    convert type reference of the destination.
    type_mem memory to operate, must be of size type->value_size.
    convert_mem memory to operate, must be of size convert->value_size.

Returns
    EINA_TRUE on success, EINA_FALSE otherwise.

Since
    1.2

  static Eina_Bool eina_value_type_convert_from (const Eina_Value_Type * type, const Eina_Value_Type * convert, void * type_mem, const void * convert_mem) [inline], [static]

Converts memory using type descriptor.

Parameters
    type type reference of the destination.
    convert type reference of the source.
    type_mem memory to operate, must be of size type->value_size.
    convert_mem memory to operate, must be of size convert->value_size.

Returns
    EINA_TRUE on success, EINA_FALSE otherwise.

Since
    1.2

  static Eina_Bool eina_value_type_vset (const Eina_Value_Type * type, void * mem, va_list args) [inline], [static]

Sets memory using type descriptor and variable argument.

Parameters
    type type reference of the source.
    mem memory to operate, must be of size type->value_size.
    args input value.

Returns
    EINA_TRUE on success, EINA_FALSE otherwise.

Since
    1.2

  static Eina_Bool eina_value_type_pset (const Eina_Value_Type * type, void * mem, const void * ptr) [inline], [static]

Sets memory using type descriptor and pointer.

Parameters
    type type reference of the source.
    mem memory to operate, must be of size type->value_size.
    ptr pointer to input value.

Returns
    EINA_TRUE on success, EINA_FALSE otherwise.

Since
    1.2

Examples
eina_value_03.c.

  static Eina_Bool eina_value_type_pget (const Eina_Value_Type * type, const void * mem, void * ptr) [inline], [static]

Gets memory using type descriptor.

Parameters
    type type reference of the source.
    mem memory to operate, must be of size type->value_size.
    ptr pointer to output.

Returns
    EINA_TRUE on success, EINA_FALSE otherwise.

Since
    1.2

Author

Generated automatically by Doxygen for EFL from the source code.