C ABI: PUQ

The experimental PUQ C ABI evaluates, converts, formats, and releases opaque quantity handles. See C bindings for build instructions and ownership rules.

Typedefs

typedef struct snt_puq_quantity snt_puq_quantity

Opaque handle for a parsed PUQ quantity.

Functions

int snt_puq_quantity_eval(const char *expression, snt_puq_quantity **result, snt_puq_error *error)

Evaluate a PUEL quantity expression.

int snt_puq_quantity_convert(const snt_puq_quantity *quantity, const char *units, snt_puq_quantity **result, snt_puq_error *error)

Convert a quantity to another unit expression.

int snt_puq_quantity_format(const snt_puq_quantity *quantity, char *buffer, size_t capacity, snt_puq_error *error)

Format a quantity into a caller-provided buffer.

void snt_puq_quantity_free(snt_puq_quantity *quantity)

Release a quantity returned by the C ABI. Accepts null.

struct snt_puq_error
#include <puq.h>

Error code and diagnostic message returned by a PUQ ABI function.

Public Members

int code
const char *message