#include <dbus-marshal-recursive.h>
Data Fields | |
dbus_uint32_t | type_pos_in_value_str: 1 |
true if the type_pos is in value_str and not type_str | |
dbus_uint32_t | container_type: 3 |
the "id" of the container type | |
dbus_uint32_t | array_len_offset: 3 |
bytes back from start_pos that len ends | |
dbus_uint32_t | type_pos: DBUS_MAXIMUM_MESSAGE_LENGTH_BITS |
position in type_str | |
dbus_uint32_t | value_pos: DBUS_MAXIMUM_MESSAGE_LENGTH_BITS |
position in value_str | |
dbus_uint32_t | array_start_pos: DBUS_MAXIMUM_MESSAGE_LENGTH_BITS |
start of the array the reader was iterating over |
The idea was to use this for caching header fields in dbus-message.c. However now I'm thinking why not cache the actual values (e.g. char*) and if the field needs to be set or deleted, just linear search for it. Those operations are uncommon, and getting the values should be fast and not involve all this type reader nonsense.
Definition at line 51 of file dbus-marshal-recursive.h.