tracepoint: Refactor representation of nested types
[lttng-modules.git] / lttng-context-hostname.c
index 6f9d130cb6acfbef5747e403bba97285521017b2..0bbb1c78d78f3479000d1672585187408e3dbccf 100644 (file)
@@ -75,6 +75,9 @@ void hostname_get_value(struct lttng_ctx_field *field,
        value->str = hostname;
 }
 
+static const struct lttng_type hostname_array_elem_type =
+       __type_integer(char, 0, 0, -1, __BYTE_ORDER, 10, UTF8);
+
 int lttng_add_hostname_to_ctx(struct lttng_ctx **ctx)
 {
        struct lttng_ctx_field *field;
@@ -87,15 +90,11 @@ int lttng_add_hostname_to_ctx(struct lttng_ctx **ctx)
                return -EEXIST;
        }
        field->event_field.name = "hostname";
-       field->event_field.type.atype = atype_array;
-       field->event_field.type.u.array.elem_type.atype = atype_integer;
-       field->event_field.type.u.array.elem_type.u.basic.integer.size = sizeof(char) * CHAR_BIT;
-       field->event_field.type.u.array.elem_type.u.basic.integer.alignment = lttng_alignof(char) * CHAR_BIT;
-       field->event_field.type.u.array.elem_type.u.basic.integer.signedness = lttng_is_signed_type(char);
-       field->event_field.type.u.array.elem_type.u.basic.integer.reverse_byte_order = 0;
-       field->event_field.type.u.array.elem_type.u.basic.integer.base = 10;
-       field->event_field.type.u.array.elem_type.u.basic.integer.encoding = lttng_encode_UTF8;
-       field->event_field.type.u.array.length = LTTNG_HOSTNAME_CTX_LEN;
+       field->event_field.type.atype = atype_array_nestable;
+       field->event_field.type.u.array_nestable.elem_type =
+               &hostname_array_elem_type;
+       field->event_field.type.u.array_nestable.length = LTTNG_HOSTNAME_CTX_LEN;
+       field->event_field.type.u.array_nestable.alignment = 0;
 
        field->get_size = hostname_get_size;
        field->record = hostname_record;
This page took 0.022953 seconds and 4 git commands to generate.