Cvc5Statistics

See Statistics for general information on statistics in cvc5.

Struct cvc5::Statistics represents a mapping from statistic names to statistic values, which are represented by struct Cvc5Stat. A Cvc5Stat may hold values of different types (bool, int64_t, uint64_t, double, const char* and histograms) and can be inspected by identifying the type via functions cvc5_stat_is_<type> and obtaining the actual value via functions cvc5_stat_get_<type>. Histograms are represented as a paar of arrays (const char** keys[] and uint64_t* values[]) where the key is the string representation of one enumeration value and the value is the frequency of this particular value.

A statistics iterator can be initialized via cvc5_stats_iter_init(), which allows to configure the visbility of internal and unchanged statistic entries. Iteration over statistics entries is then provided via functions cvc5_stats_iter_has_next() and cvc5_stats_iter_next().


typedef struct cvc5_stat_t *Cvc5Stat

A cvc5 statistic.


bool cvc5_stat_is_internal(Cvc5Stat stat)

Determine if a given statistic is intended for internal use only.

Parameters:

stat – The statistic.

Returns:

True if this is an internal statistic.

bool cvc5_stat_is_default(Cvc5Stat stat)

Determine if a given statistics statistic holds the default value.

Parameters:

stat – The statistic.

Returns:

True if this is a defaulted statistic.

bool cvc5_stat_is_int(Cvc5Stat stat)

Determine if a given statistic holds an integer value.

Parameters:

stat – The statistic.

Returns:

True if this value is an integer.

int64_t cvc5_stat_get_int(Cvc5Stat stat)

Get the value of an integer statistic.

Parameters:

stat – The statistic.

Returns:

The integer value.

bool cvc5_stat_is_double(Cvc5Stat stat)

Determine if a given statistic holds a double value.

Parameters:

stat – The statistic.

Returns:

True if this value is a double.

double cvc5_stat_get_double(Cvc5Stat stat)

Get the value of a double statistic.

Parameters:

stat – The statistic.

Returns:

The double value.

bool cvc5_stat_is_string(Cvc5Stat stat)

Determine if a given statistic holds a string value.

Parameters:

stat – The statistic.

Returns:

True if this value is a string.

const char *cvc5_stat_get_string(Cvc5Stat stat)

Get value of a string statistic.

Note

The returned char pointer is only valid until the next call to this function.

Parameters:

stat – The statistic.

Returns:

The string value.

bool cvc5_stat_is_histogram(Cvc5Stat stat)

Determine if a given statistic holds a histogram.

Parameters:

stat – The statistic.

Returns:

True if this value is a histogram.

void cvc5_stat_get_histogram(Cvc5Stat stat, const char **keys[], uint64_t *values[], size_t *size)

Get the value of a histogram statistic.

Parameters:

stat – The statistic.

Returns:

The histogram value.

const char *cvc5_stat_to_string(Cvc5Stat stat)

Get a string representation of a given statistic.

Note

The returned char* pointer is only valid until the next call to this function.

Parameters:

stat – The statistic.

Returns:

The string representation.


typedef struct cvc5_stats_t *Cvc5Statistics

A cvc5 statistics instance.


Warning

doxygengroup: Cannot find group “c_cvc5statistics” in doxygen xml output for project “cvc5_c” from directory: /home/runner/work/cvc5/cvc5/build-shared/docs/api/c/doxygen/xml