idlc 1.5.14
Interface Definition Language Compiler
Loading...
Searching...
No Matches
Types

Function pointer types.

Function pointers definitions.

typedef idl_source_t *(* idl_import_callback_t) (idl_utf8_t name, idl_uint32_t depth, idl_data_t data)
 Callback to get sources.
 
typedef void(* idl_release_import_callback_t) (idl_source_t *source, idl_data_t data)
 Callback to release sources.
 
typedef void(* idl_write_callback_t) (const idl_source_t *source, idl_data_t data)
 Callback to which the compilation result is passed.
 

Platform-independent type definitions.

Fixed-size types guaranteed to work across all supported platforms.

typedef char idl_char_t
 symbol type.
 
typedef int32_t idl_bool_t
 boolean type.
 
typedef int8_t idl_sint8_t
 8 bit signed integer.
 
typedef uint8_t idl_uint8_t
 8 bit unsigned integer.
 
typedef int16_t idl_sint16_t
 16 bit signed integer.
 
typedef uint16_t idl_uint16_t
 16 bit unsigned integer.
 
typedef int32_t idl_sint32_t
 32 bit signed integer.
 
typedef uint32_t idl_uint32_t
 32 bit unsigned integer.
 
typedef int64_t idl_sint64_t
 64 bit signed integer.
 
typedef uint64_t idl_uint64_t
 64 bit unsigned integer.
 
typedef float idl_float32_t
 32 bit float point.
 
typedef double idl_float64_t
 64 bit float point.
 
typedef const char * idl_utf8_t
 utf8 string.
 
typedef void * idl_data_t
 pointer to data.
 
typedef const void * idl_cdata_t
 pointer to immutable data.
 

Opaque Object Types

Forward declarations for framework objects using opaque pointer types

These macros generate typedefs for pointers to incomplete struct types, providing type safety while hiding implementation details. Each represents a major subsystem in the Idl framework.

See also
IDL_TYPE
typedef struct _idl_compilation_result * idl_compilation_result_t
 Compilation result.
 
typedef struct _idl_options * idl_options_t
 Compilation options.
 
typedef struct _idl_compiler * idl_compiler_t
 Compiler interface.
 

Typedef Documentation

◆ idl_import_callback_t

typedef idl_source_t *(* idl_import_callback_t) (idl_utf8_t name, idl_uint32_t depth, idl_data_t data)

Callback to get sources.

Used to retrieve and compile sources from memory.

Parameters
[in]nameThe name of the file that the compiler is trying to get (for example, when it encounters "import").
[in]depthCurrent imports nesting level.
[in]dataUser data specified when setting up a callback.
Returns
Should return the source if the file can be resolved, or null to indicate to the compiler that it cannot resolve the source and should try to find the source elsewhere (e.g. via import paths).
See also
If the callback allocates memory, then you can free it in the callback idl_release_import_callback_t.

◆ idl_release_import_callback_t

typedef void(* idl_release_import_callback_t) (idl_source_t *source, idl_data_t data)

Callback to release sources.

If idl_import_callback_t allocated memory dynamically for the source, you can free it here.

Parameters
[in]sourceSource for release.
[in]dataUser data specified when setting up a callback.
See also
idl_import_callback_t.

◆ idl_write_callback_t

typedef void(* idl_write_callback_t) (const idl_source_t *source, idl_data_t data)

Callback to which the compilation result is passed.

If you need to save the compilation result to a location other than the file system, such as the network or console output, you can use this callback.

Parameters
[in]sourceSource of compiler output.
[in]dataUser data specified when setting up a callback.
Note
The compiler can output multiple sources. The exact number depends on the selected generator idl_generator_t.