String_tableSourceThe string_table module implements string tables. An ELF file may have * multiple different string tables used for different purposes. A string * table is a string coupled with a delimiting character. Strings may be indexed * at any position, not necessarily on a delimiter boundary.
string_table type, represents a string table with a fixed delimiting * character and underlying string.
mk_string_table base sep constructs a string table using base as the * base string and sep as the delimiting character to use to split base * when trying to access the string stored in the table using the functions below.
string_table_of_byte_sequence seq constructs a string table, using the NUL * character as terminator, from a byte sequence.
empty is the empty string table with an arbitrary choice of delimiter.
get_delimiating_character tbl returns the delimiting character associated * with the string table tbl, used to split the strings.
get_base_string tbl returns the base string of the string table tbl.
size tbl returns the size in bytes of the string table tbl.
concat xs concatenates several string tables into one providing they all * have the same delimiting character.
get_string_at index tbl returns the string starting at character index * from the start of the base string until the first occurrence of the delimiting * character.