X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=include%2Fbabeltrace%2Fvalue-internal.h;h=0e50e2de0fb4c3c1566fd5bf053507e2d9496e09;hb=fdd3a2da18afef5ca32ba181a8b6ebbff173df02;hp=b4368f56f6aa4bf084caa5a0de61bd83b7c101f3;hpb=e2f7325d1e58710ee928373592adcee466f93d06;p=babeltrace.git diff --git a/include/babeltrace/value-internal.h b/include/babeltrace/value-internal.h index b4368f56..0e50e2de 100644 --- a/include/babeltrace/value-internal.h +++ b/include/babeltrace/value-internal.h @@ -23,8 +23,50 @@ * SOFTWARE. */ +#include #include #include +#include +#include + +struct bt_value { + struct bt_object base; + enum bt_value_type type; + bt_bool frozen; +}; + +struct bt_value_bool { + struct bt_value base; + bt_bool value; +}; + +struct bt_value_integer { + struct bt_value base; + union { + uint64_t i; + int64_t u; + } value; +}; + +struct bt_value_real { + struct bt_value base; + double value; +}; + +struct bt_value_string { + struct bt_value base; + GString *gstr; +}; + +struct bt_value_array { + struct bt_value base; + GPtrArray *garray; +}; + +struct bt_value_map { + struct bt_value base; + GHashTable *ght; +}; BT_HIDDEN enum bt_value_status _bt_value_freeze(const struct bt_value *object);