NAME
dwarf_attr —
retrieve an attribute
descriptor associated with a DWARF debugging information entry
LIBRARY
DWARF Access Library (libdwarf, -ldwarf)
SYNOPSIS
#include <libdwarf.h>
int
dwarf_attr(
Dwarf_Die die,
Dwarf_Half attr,
Dwarf_Attribute
*atp,
Dwarf_Error *err);
DESCRIPTION
Function
dwarf_attr() retrieves the attribute descriptor for
an attribute associated with the DWARF debugging information entry descriptor
in argument
die.
DWARF attribute descriptors are represented by value of the opaque type
Dwarf_Attribute, see
dwarf(3).
Argument
attr names the desired DWARF attribute. Legal
values for argument
attr are those denoted by the
DW_AT_*
constants in the DWARF specification.
Argument
atp points to a location into which the returned
attribute descriptor will be written. The returned descriptor may then be
passed to the form query functions in the
dwarf(3) API set to access the
data associated with the attribute.
If argument
err is non-NULL, it will be used to return an
error descriptor in case of an error.
RETURN VALUES
Function
dwarf_attr() returns
DW_DLV_OK on
success.
If the debugging information entry descriptor denoted by argument
die does not contain the named attribute, the function
returns
DW_DLV_NO_ENTRY
and sets argument
err. For other errors, it returns
DW_DLV_ERROR
and sets argument
err.
ERRORS
Function
dwarf_attr() can fail with the following errors:
-
-
- [
DW_DLE_ARGUMENT
]
- Either of arguments die or
atp was NULL.
-
-
- [
DW_DLE_NO_ENTRY
]
- Argument die had no attribute
corresponding to the value in argument attr.
SEE ALSO
dwarf(3),
dwarf_attrlist(3),
dwarf_attroffset(3),
dwarf_hasattr(3),
dwarf_hasform(3),
dwarf_whatattr(3),
dwarf_whatform(3)