libctf: add ctf_type_name_raw
authorNick Alcock <nick.alcock@oracle.com>
Tue, 2 Jun 2020 20:06:18 +0000 (21:06 +0100)
committerNick Alcock <nick.alcock@oracle.com>
Wed, 22 Jul 2020 16:57:36 +0000 (17:57 +0100)
commit01d9317436cd824306b9856861408a40bf8da36a
treec47b60aa0e7a9a0c42c1df872683cad7182fbed0
parent5ec7465fec8bceb477732d6757112fe162116eb8
libctf: add ctf_type_name_raw

We already have a function ctf_type_aname_raw, which returns the raw
name of a type with no decoration for structures or arrays or anything
like that: just the underlying name of whatever it is that's being
ultimately pointed at.

But this can be inconvenient to use, becauswe it always allocates new
storage for the string and copies it in, so it can potentially fail.
Add ctf_type_name_raw, which just returns the string directly out of
libctf's guts: it will live until the ctf_file_t is closed (if we later
gain the ability to remove types from writable dicts, it will live as
long as the type lives).

Reimplement ctf_type_aname_raw in terms of it.

include/
* ctf-api.c (ctf_type_name_raw): New.

libctf/
* ctf-types.c (ctf_type_name_raw): New.
(ctf_type_aname_raw): Reimplement accordingly.
include/ChangeLog
include/ctf-api.h
libctf/ChangeLog
libctf/ctf-types.c
libctf/libctf.ver