_Eina_Value_Struct_Operations(3)

NAME
_Eina_Value_Struct_Operations - How to manage struct.

SYNOPSIS

  Data Fields
unsigned int version
must be EINA_VALUE_STRUCT_OPERATIONS_VERSION
void *(* alloc )(const Eina_Value_Struct_Operations *ops, const Eina_Value_Struct_Desc *desc)
How to allocate struct memory to be managed by the Eina_Value.
void(* free )(const Eina_Value_Struct_Operations *ops, const Eina_Value_Struct_Desc *desc, void *memory)
How to release memory managed by the Eina_Value.
void *(* copy )(const Eina_Value_Struct_Operations *ops, const Eina_Value_Struct_Desc *desc, const void *memory)
How to copy struct memory from an existing Eina_Value, if not provided alloc() will be used, then every member is copied using eina_value_type_copy() with member's type.
int(* compare )(const Eina_Value_Struct_Operations *ops, const Eina_Value_Struct_Desc *desc, const void *data1, const void *data2)
How to compare two struct memories.
const Eina_Value_Struct_Member *(* find_member )(const Eina_Value_Struct_Operations *ops, const Eina_Value_Struct_Desc *desc, const char *name)
How to find description for member.

Detailed Description

How to manage struct. Any NULL callback is ignored.

Since
    1.2

Field Documentation

  const Eina_Value_Struct_Member*(* _Eina_Value_Struct_Operations::find_member) (const Eina_Value_Struct_Operations *ops, const Eina_Value_Struct_Desc *desc, const char *name)

How to find description for member. For huge structures consider using binary search, stringshared, hash or gperf. The default function does linear search using strcmp().

Author

Generated automatically by Doxygen for EFL from the source code.