Fix: array and sequence field's 'elems' members can be left NULL
[babeltrace.git] / types / integer.c
index 52cc6bb682fa6baad78c2c0036b2d44eebeab5cf..90525f5d8af48ea5233e3c58a88aed3451cfa1b5 100644 (file)
@@ -201,3 +201,19 @@ int64_t bt_get_signed_int(const struct bt_definition *field)
                g_quark_to_string(field->name));
        return (int64_t)integer_definition->value._unsigned;
 }
+
+bool bt_int_is_char(const struct bt_declaration *field)
+{
+       bool ret;
+       struct declaration_integer *integer_declaration =
+               container_of(field, struct declaration_integer, p);
+
+       /* Integer must be ASCII or encoded as UTF-8. */
+       ret = integer_declaration->encoding == CTF_STRING_UTF8 ||
+                       integer_declaration->encoding == CTF_STRING_ASCII;
+       /* Integer must be aligned on a byte boundary and be byte-sized. */
+       ret &= integer_declaration->len == CHAR_BIT &&
+                       integer_declaration->p.alignment == CHAR_BIT;
+
+       return ret;
+}
This page took 0.025389 seconds and 4 git commands to generate.