Diffusion C API 6.11.5
Loading...
Searching...
No Matches
diffusion-recordv2-builder.h File Reference

Builder for RecordV2. More...

Typedefs

typedef struct DIFFUSION_RECORDV2_BUILDER_T DIFFUSION_RECORDV2_BUILDER_T
 Opaque recordv2 value builder data type.
 

Functions

DIFFUSION_RECORDV2_BUILDER_Tdiffusion_recordv2_builder_init ()
 Initialise a new recordv2 builder.
 
void diffusion_recordv2_builder_add_record (const DIFFUSION_RECORDV2_BUILDER_T *recordv2_builder, char **fields)
 Adds a new record comprising the specified field values.
 
void diffusion_recordv2_builder_add_record_with_list (const DIFFUSION_RECORDV2_BUILDER_T *recordv2_builder, LIST_T *fields)
 Adds a new record comprising the specified field values.
 
void diffusion_recordv2_builder_add_fields (const DIFFUSION_RECORDV2_BUILDER_T *recordv2_builder, char **values)
 Adds one or more field values.
 
void diffusion_recordv2_builder_add_fields_with_list (const DIFFUSION_RECORDV2_BUILDER_T *recordv2_builder, LIST_T *values)
 Adds one or more field values.
 
void * diffusion_recordv2_builder_build (const DIFFUSION_RECORDV2_BUILDER_T *recordv2_builder)
 Builds a bytes representation of the current builder state.
 
void diffusion_recordv2_builder_clear (DIFFUSION_RECORDV2_BUILDER_T *recordv2_builder)
 Clears all current values from the builder allowing it to be reused to generate new data.
 
void diffusion_recordv2_builder_free (DIFFUSION_RECORDV2_BUILDER_T *recordv2_builder)
 Free a recordv2 builder.
 

Detailed Description

Builder for RecordV2.

Function Documentation

◆ diffusion_recordv2_builder_add_fields()

void diffusion_recordv2_builder_add_fields ( const DIFFUSION_RECORDV2_BUILDER_T recordv2_builder,
char **  values 
)

Adds one or more field values.

If there is a current record, this adds the fields to the end of the current record.

Parameters
recordv2_builderthe builder to modify
valuesfield values

◆ diffusion_recordv2_builder_add_fields_with_list()

void diffusion_recordv2_builder_add_fields_with_list ( const DIFFUSION_RECORDV2_BUILDER_T recordv2_builder,
LIST_T *  values 
)

Adds one or more field values.

If there is a current record, this adds the fields to the end of the current record.

Parameters
recordv2_builderthe builder to modify
valuesfield values

◆ diffusion_recordv2_builder_add_record()

void diffusion_recordv2_builder_add_record ( const DIFFUSION_RECORDV2_BUILDER_T recordv2_builder,
char **  fields 
)

Adds a new record comprising the specified field values.

Parameters
recordv2_builderthe builder to modify
fieldsthe fields within the new record. If no fields are supplied, an empty record will be added.

◆ diffusion_recordv2_builder_add_record_with_list()

void diffusion_recordv2_builder_add_record_with_list ( const DIFFUSION_RECORDV2_BUILDER_T recordv2_builder,
LIST_T *  fields 
)

Adds a new record comprising the specified field values.

Parameters
recordv2_builderthe builder to modify
fieldsthe fields within the new record. If no fields are supplied, an empty record will be added.

◆ diffusion_recordv2_builder_build()

void * diffusion_recordv2_builder_build ( const DIFFUSION_RECORDV2_BUILDER_T recordv2_builder)

Builds a bytes representation of the current builder state.

Parameters
recordv2_builderthe builder to build
Returns
a bytes representation of the builder.

◆ diffusion_recordv2_builder_clear()

void diffusion_recordv2_builder_clear ( DIFFUSION_RECORDV2_BUILDER_T recordv2_builder)

Clears all current values from the builder allowing it to be reused to generate new data.

Parameters
recordv2_builderthe builder to clear

◆ diffusion_recordv2_builder_free()

void diffusion_recordv2_builder_free ( DIFFUSION_RECORDV2_BUILDER_T recordv2_builder)

Free a recordv2 builder.

Parameters
recordv2_builderbuilder to be freed.

◆ diffusion_recordv2_builder_init()

DIFFUSION_RECORDV2_BUILDER_T * diffusion_recordv2_builder_init ( )

Initialise a new recordv2 builder.

diffusion_recordv2_builder_free should be called on this pointer when no longer needed.

Returns
a recordv2 builder