Macros | Typedefs | Variables
Types

Macros

#define EAPI
 Used to export functions(by changing visibility).
 
#define EXPORTAPI
 
#define EINA_UNUSED
 Used to warn when an argument of the function is not used.
 
#define EINA_WARN_UNUSED_RESULT
 Used to warn when the returned value of the function is not used.
 
#define EINA_ARG_NONNULL(...)
 Used to warn when the specified arguments of the function are NULL. More...
 
#define EINA_DEPRECATED
 Used to warn when the function is considered as deprecated.
 
#define EINA_MALLOC
 EINA_MALLOC is used to tell the compiler that a function may be treated as if any non-NULL pointer it returns cannot alias any other pointer valid when the function returns and that the memory has undefined content.
 
#define EINA_PURE
 EINA_PURE is used to tell the compiler this functions has no effects except the return value and their return value depends only on the parameters and/or global variables.
 
#define EINA_PRINTF(fmt, arg)
 
#define EINA_SCANF(fmt, arg)
 
#define EINA_FORMAT(fmt)
 
#define EINA_CONST
 Attribute from gcc to prevent the function to read/modify any global memory.
 
#define EINA_NOINSTRUMENT
 Attribute from gcc to disable instrumentation for a specific function.
 
#define EINA_UNLIKELY(exp)   exp
 
#define EINA_LIKELY(exp)   exp
 
#define EINA_SENTINEL
 Attribute from gcc to prevent calls without the necessary NULL sentinel in certain variadic functions. More...
 
#define EINA_FALSE   ((Eina_Bool)0)
 boolean value FALSE (numerical value 0)
 
#define EINA_TRUE   ((Eina_Bool)1)
 boolean value TRUE (numerical value 1)
 
#define EINA_COMPARE_CB(function)   ((Eina_Compare_Cb)function)
 Macro to cast to Eina_Compare_Cb.
 
#define EINA_RANDOM_CB(function)   ((Eina_Random_Cb)function)
 Macro to cast to Eina_Random_Cb.
 
#define EINA_EACH_CB(Function)   ((Eina_Each_Cb)Function)
 Macro to cast to Eina_Each.
 
#define EINA_FREE_CB(Function)   ((Eina_Free_Cb)Function)
 Macro to cast to Eina_Free_Cb.
 
#define EINA_C_ARRAY_LENGTH(arr)   (sizeof(arr) / sizeof((arr)[0]))
 Macro to return the array length of a standard c array. More...
 
#define EINA_DOUBLE_EQUAL(x, y)   (fabs((x) - (y)) <= (2.2204460492503131e-16) * fabs((x)))
 Macro to compare 2 double floating point values and deal with precision loss issues. More...
 

Typedefs

typedef unsigned char Eina_Bool
 Type to mimic a boolean. More...
 
typedef int(* Eina_Compare_Cb) (const void *data1, const void *data2)
 Function used in functions using sorting. More...
 
typedef int(* Eina_Random_Cb) (const int min, const int max)
 Function used in shuffling functions. More...
 
typedef Eina_Bool(* Eina_Each_Cb) (const void *container, void *data, void *fdata)
 A callback type used when iterating over a container.
 
typedef void(* Eina_Free_Cb) (void *data)
 A callback type used to free data when iterating over a container.
 

Variables

const unsigned int eina_prime_table []
 

Detailed Description

Macro Definition Documentation

◆ EINA_ARG_NONNULL

#define EINA_ARG_NONNULL (   ...)

Used to warn when the specified arguments of the function are NULL.

Parameters
...Oridnals of the parameters to check for nullity (1..n)
Returns
Nothing, but Doxygen will complain if it's not documented :-P

◆ EINA_PRINTF

#define EINA_PRINTF (   fmt,
  arg 
)
Parameters
fmtThe format to be used.
argThe argument to be used.

◆ EINA_SCANF

#define EINA_SCANF (   fmt,
  arg 
)
Parameters
fmtThe format to be used.
argThe argument to be used.

◆ EINA_FORMAT

#define EINA_FORMAT (   fmt)
Parameters
fmtThe format to be used.

◆ EINA_UNLIKELY

#define EINA_UNLIKELY (   exp)    exp

◆ EINA_LIKELY

#define EINA_LIKELY (   exp)    exp
Parameters
expThe expression to be used.

Referenced by ector_init(), ector_shutdown(), eina_init(), eina_log_level_set(), and eo_del_intercept_get().

◆ EINA_SENTINEL

#define EINA_SENTINEL

Attribute from gcc to prevent calls without the necessary NULL sentinel in certain variadic functions.

Since
1.7.0

◆ EINA_C_ARRAY_LENGTH

#define EINA_C_ARRAY_LENGTH (   arr)    (sizeof(arr) / sizeof((arr)[0]))

Macro to return the array length of a standard c array.

For example: int foo[] = { 0, 1, 2, 3 }; would return 4 and not 4 * sizeof(int).

Since
1.2.0
Examples:
complex-types-server.c, eina_value_02.c, and ephysics_logo.c.

◆ EINA_DOUBLE_EQUAL

#define EINA_DOUBLE_EQUAL (   x,
 
)    (fabs((x) - (y)) <= (2.2204460492503131e-16) * fabs((x)))

Macro to compare 2 double floating point values and deal with precision loss issues.

Since
1.18

Typedef Documentation

◆ Eina_Bool

Type to mimic a boolean.

Note
it differs from stdbool.h as this is defined as an unsigned char to make it usable by bitfields (Eina_Bool name:1) and also take as few bytes as possible.

◆ Eina_Compare_Cb

Eina_Compare_Cb

Function used in functions using sorting.

It compares data1 and data2. If data1 is 'less' than data2, -1 must be returned, if it is 'greater', 1 must be returned, and if they are equal, 0 must be returned.

Examples:
eina_list_02.c.

◆ Eina_Random_Cb

Eina_Random_Cb

Function used in shuffling functions.

An integer betwen min and max inclusive must be returned.

Since
1.8