- Main Page
- Related Pages
- Modules
- Data Structures
- Files
- Examples

- Data Structures
- Data Structure Index
- Class Hierarchy
- Data Fields

Data Fields
_Eina_Value_Struct_Desc Struct Reference
Generic Value Struct management

Describes the struct by listing its size, members and operations. More...

## Data Fields
unsigned int | version
| must be EINA_VALUE_STRUCT_DESC_VERSION
const Eina_Value_Struct_Operations * | ops
| operations, if `NULL` defaults will be used. More...
const Eina_Value_Struct_Member * | members
| array of member descriptions, if `member_count` is zero, then it must be `NULL` terminated. More...
unsigned int | member_count
| if > 0, specifies number of members. More...
unsigned int | size
| byte size to allocate, may be bigger than sum of members

## Detailed Description

Describes the struct by listing its size, members and operations.

This is the root of Eina_Value knowledge about the memory it's handling as a structure. It adds introspection, saying the byte size of the structure, its members and how to manage such members.

Since
  1.2

Examples:
  complex-types-client-eina-value.c, and eina_value_02.c.

## Field Documentation

const Eina_Value_Struct_Operations* _Eina_Value_Struct_Desc::ops

operations, if `NULL` defaults will be used.

You may use operations to optimize member lookup using binary search or gperf hash.

const Eina_Value_Struct_Member* _Eina_Value_Struct_Desc::members

array of member descriptions, if `member_count` is zero, then it must be `NULL` terminated.

unsigned int _Eina_Value_Struct_Desc::member_count

if > 0, specifies number of members.

If zero then `members` must be NULL terminated.