43 TBLITE_TABLE_VALUE_TYPE_NONE = 0,
44 TBLITE_TABLE_VALUE_TYPE_BOOL = 1,
45 TBLITE_TABLE_VALUE_TYPE_INT = 2,
46 TBLITE_TABLE_VALUE_TYPE_DOUBLE = 3,
47 TBLITE_TABLE_VALUE_TYPE_CHAR = 4,
48 TBLITE_TABLE_VALUE_TYPE_ARRAY = 5,
49 TBLITE_TABLE_VALUE_TYPE_TABLE = 6
291#define tblite_table_set_value(error, table, key, value, ...) \
293 double*: tblite_table_set_double, \
294 int64_t*: tblite_table_set_int64_t, \
295 bool*: tblite_table_set_bool, \
296 char(*)[]: tblite_table_set_char \
297 )((error), (table), (key), (value), __VA_ARGS__)
Provides a light-weight error handler for communicating with the library.
struct _tblite_error * tblite_error
Error instance.
Definition error.h:35
General macro definitions for the tblite C API bindings.
#define TBLITE_API_ENTRY
Definition macros.h:49
#define TBLITE_API_CALL
Definition macros.h:57
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_delete_table(tblite_table *table)
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_table_set_array(tblite_error error, tblite_table table, char key[], tblite_array array)
Set the value of a table entry to a data array.
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_table_get_char(tblite_error error, tblite_table table, char key[], char value[], int n)
Return a scalar character value from a table entry.
struct _tblite_table * tblite_table
Definition table.h:36
TBLITE_API_ENTRY tblite_array TBLITE_API_CALL tblite_new_array(void)
Create new data array object.
TBLITE_API_ENTRY int TBLITE_API_CALL tblite_table_get_type(tblite_error error, tblite_table table, char key[])
Return the value kind of a table entry.
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_delete_array(tblite_array *array)
Delete a data array object.
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_table_set_int64_t(tblite_error error, tblite_table table, char key[], int64_t *value, int n)
TBLITE_API_ENTRY tblite_array TBLITE_API_CALL tblite_table_get_array(tblite_error error, tblite_table table, char key[])
Return an array value from a table entry.
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_array_get_int64_t(tblite_error error, tblite_array array, int index, int64_t *value)
Return an array entry as an integer value.
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_array_push_back_double(tblite_error error, tblite_array array, double value)
Append a double value to a data array.
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_table_set_bool(tblite_error error, tblite_table table, char key[], bool *value, int n)
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_array_push_back_bool(tblite_error error, tblite_array array, bool value)
Append a boolean value to a data array.
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_dump_table(tblite_error error, tblite_table table, char filename[])
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_array_push_back_char(tblite_error error, tblite_array array, char value[])
Append a character string to a data array.
TBLITE_API_ENTRY int TBLITE_API_CALL tblite_array_size(tblite_error error, tblite_array array)
Return the number of entries in a data array.
struct _tblite_array * tblite_array
Handle for holding an array data structure.
Definition table.h:39
TBLITE_API_ENTRY tblite_table TBLITE_API_CALL tblite_table_add_table(tblite_error error, tblite_table table, char key[])
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_table_get_double(tblite_error error, tblite_table table, char key[], double *value)
Return a scalar floating point value from a table entry.
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_table_get_bool(tblite_error error, tblite_table table, char key[], bool *value)
Return a scalar bool value from a table entry.
tblite_table_value_type
Supported value kinds for table entries.
Definition table.h:42
TBLITE_API_ENTRY int TBLITE_API_CALL tblite_table_get_n_keys(tblite_error error, tblite_table table)
Return the number of entries in a table.
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_array_get_double(tblite_error error, tblite_array array, int index, double *value)
Return an array entry as a double value.
TBLITE_API_ENTRY int TBLITE_API_CALL tblite_array_get_type(tblite_error error, tblite_array array, int index)
Return the value kind of an array entry.
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_table_get_int64_t(tblite_error error, tblite_table table, char key[], int64_t *value)
Return a scalar integer value from a table entry.
TBLITE_API_ENTRY tblite_table TBLITE_API_CALL tblite_table_get_table(tblite_error error, tblite_table table, char key[])
Return a child table from a table entry.
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_array_push_back_int64_t(tblite_error error, tblite_array array, int64_t value)
Append an integer value to a data array.
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_table_get_key(tblite_error error, tblite_table table, int index, char key[], int n)
Return the key of a table entry at the given index.
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_array_get_char(tblite_error error, tblite_array array, int index, char value[], int n)
Return an array entry as a character string.
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_table_set_double(tblite_error error, tblite_table table, char key[], double *value, int n)
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_table_set_char(tblite_error error, tblite_table table, char key[], char(*value)[], int n)
TBLITE_API_ENTRY tblite_table TBLITE_API_CALL tblite_new_table(tblite_table *table)
TBLITE_API_ENTRY void TBLITE_API_CALL tblite_array_get_bool(tblite_error error, tblite_array array, int index, bool *value)
Return an array entry as a boolean value.