This patchs adds the const attribute to the field access functions
(get_int64 and others) in order to keep the coherency with the get_field
and get_field_list function which return a const pointer.
fixes #84
Signed-off-by: Julien Desfossez <julien.desfossez@efficios.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
-enum ctf_type_id bt_ctf_field_type(struct definition *def)
+enum ctf_type_id bt_ctf_field_type(const struct definition *def)
{
if (def)
return def->declaration->id;
{
if (def)
return def->declaration->id;
-uint64_t bt_ctf_get_uint64(struct definition *field)
+uint64_t bt_ctf_get_uint64(const struct definition *field)
-int64_t bt_ctf_get_int64(struct definition *field)
+int64_t bt_ctf_get_int64(const struct definition *field)
-char *bt_ctf_get_char_array(struct definition *field)
+char *bt_ctf_get_char_array(const struct definition *field)
-char *bt_ctf_get_string(struct definition *field)
+char *bt_ctf_get_string(const struct definition *field)
/*
* bt_ctf_field_type: returns the type of a field or -1 if unknown
*/
/*
* bt_ctf_field_type: returns the type of a field or -1 if unknown
*/
-enum ctf_type_id bt_ctf_field_type(struct definition *def);
+enum ctf_type_id bt_ctf_field_type(const struct definition *def);
/*
* Field access functions
/*
* Field access functions
* returned is undefined. To check if an error occured, use the
* bt_ctf_field_error() function after accessing a field.
*/
* returned is undefined. To check if an error occured, use the
* bt_ctf_field_error() function after accessing a field.
*/
-uint64_t bt_ctf_get_uint64(struct definition *field);
-int64_t bt_ctf_get_int64(struct definition *field);
-char *bt_ctf_get_char_array(struct definition *field);
-char *bt_ctf_get_string(struct definition *field);
+uint64_t bt_ctf_get_uint64(const struct definition *field);
+int64_t bt_ctf_get_int64(const struct definition *field);
+char *bt_ctf_get_char_array(const struct definition *field);
+char *bt_ctf_get_string(const struct definition *field);
/*
* bt_ctf_field_error: returns the last error code encountered while
/*
* bt_ctf_field_error: returns the last error code encountered while
int signedness, size_t alignment,
int base, enum ctf_string_encoding encoding,
struct ctf_clock *clock);
int signedness, size_t alignment,
int base, enum ctf_string_encoding encoding,
struct ctf_clock *clock);
-uint64_t get_unsigned_int(struct definition *field);
-int64_t get_signed_int(struct definition *field);
+uint64_t get_unsigned_int(const struct definition *field);
+int64_t get_signed_int(const struct definition *field);
/*
* mantissa_len is the length of the number of bytes represented by the mantissa
/*
* mantissa_len is the length of the number of bytes represented by the mantissa
struct declaration_string *
string_declaration_new(enum ctf_string_encoding encoding);
struct declaration_string *
string_declaration_new(enum ctf_string_encoding encoding);
-char *get_string(struct definition *field);
+char *get_string(const struct definition *field);
struct declaration_struct *
struct_declaration_new(struct declaration_scope *parent_scope,
struct declaration_struct *
struct_declaration_new(struct declaration_scope *parent_scope,
uint64_t array_len(struct definition_array *array);
struct definition *array_index(struct definition_array *array, uint64_t i);
int array_rw(struct stream_pos *pos, struct definition *definition);
uint64_t array_len(struct definition_array *array);
struct definition *array_index(struct definition_array *array, uint64_t i);
int array_rw(struct stream_pos *pos, struct definition *definition);
-GString *get_char_array(struct definition *field);
+GString *get_char_array(const struct definition *field);
/*
* int_declaration and elem_declaration passed as parameter now belong
/*
* int_declaration and elem_declaration passed as parameter now belong
return g_ptr_array_index(array->elems, i);
}
return g_ptr_array_index(array->elems, i);
}
-GString *get_char_array(struct definition *field)
+GString *get_char_array(const struct definition *field)
{
struct definition_array *array_definition;
struct declaration_array *array_declaration;
{
struct definition_array *array_definition;
struct declaration_array *array_declaration;
-uint64_t get_unsigned_int(struct definition *field)
+uint64_t get_unsigned_int(const struct definition *field)
{
struct definition_integer *integer_definition;
const struct declaration_integer *integer_declaration;
{
struct definition_integer *integer_definition;
const struct declaration_integer *integer_declaration;
return (uint64_t)integer_definition->value._signed;
}
return (uint64_t)integer_definition->value._signed;
}
-int64_t get_signed_int(struct definition *field)
+int64_t get_signed_int(const struct definition *field)
{
struct definition_integer *integer_definition;
const struct declaration_integer *integer_declaration;
{
struct definition_integer *integer_definition;
const struct declaration_integer *integer_declaration;
-char *get_string(struct definition *field)
+char *get_string(const struct definition *field)
{
struct definition_string *string_definition =
container_of(field, struct definition_string, p);
{
struct definition_string *string_definition =
container_of(field, struct definition_string, p);