\doxysection{Fast Access to GNU .debug\+\_\+gnu\+\_\+pubnames }
\hypertarget{group__gnupubnames}{}\label{group__gnupubnames}\index{Fast Access to GNU .debug\_gnu\_pubnames@{Fast Access to GNU .debug\_gnu\_pubnames}}
\doxysubsubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
DW\+\_\+\+API int \doxymbox{\hyperlink{group__gnupubnames_gaa95c6d82ce0e4e391b4c85277ccb9ba2}{dwarf\+\_\+get\+\_\+gnu\+\_\+index\+\_\+head}} (\doxymbox{\hyperlink{group__allstructs_gac2ba1e1c1b70a3191506b414195ca807}{Dwarf\+\_\+\+Debug}} dw\+\_\+dbg, \doxymbox{\hyperlink{group__basicdatatypes_ga32afecc94a71aae2be36aa279f1dded8}{Dwarf\+\_\+\+Bool}} dw\+\_\+which\+\_\+section, \doxymbox{\hyperlink{group__allstructs_ga8c3ab130d977f00b1927da5af4926cff}{Dwarf\+\_\+\+Gnu\+\_\+\+Index\+\_\+\+Head}} \texorpdfstring{$\ast$}{*}dw\+\_\+head, \doxymbox{\hyperlink{group__basicdatatypes_ga5de64bb9627534a24dcbccc327916265}{Dwarf\+\_\+\+Unsigned}} \texorpdfstring{$\ast$}{*}dw\+\_\+index\+\_\+block\+\_\+count\+\_\+out, \doxymbox{\hyperlink{group__allstructs_ga8d4fac0e48040b6ca91e06ffda09766a}{Dwarf\+\_\+\+Error}} \texorpdfstring{$\ast$}{*}dw\+\_\+error)
\begin{DoxyCompactList}\small\item\em Access to .debug\+\_\+gnu\+\_\+pubnames or .debug\+\_\+gnu\+\_\+pubtypes. \end{DoxyCompactList}\item 
DW\+\_\+\+API void \doxymbox{\hyperlink{group__gnupubnames_ga3a2b79cf3576316ae2f8abab80944339}{dwarf\+\_\+gnu\+\_\+index\+\_\+dealloc}} (\doxymbox{\hyperlink{group__allstructs_ga8c3ab130d977f00b1927da5af4926cff}{Dwarf\+\_\+\+Gnu\+\_\+\+Index\+\_\+\+Head}} dw\+\_\+head)
\begin{DoxyCompactList}\small\item\em Free resources of .debug\+\_\+gnu\+\_\+pubnames .debug\+\_\+gnu\+\_\+pubtypes. \end{DoxyCompactList}\item 
DW\+\_\+\+API int \doxymbox{\hyperlink{group__gnupubnames_ga8f0a6e9de1520432fc9a0dce1af324e1}{dwarf\+\_\+get\+\_\+gnu\+\_\+index\+\_\+block}} (\doxymbox{\hyperlink{group__allstructs_ga8c3ab130d977f00b1927da5af4926cff}{Dwarf\+\_\+\+Gnu\+\_\+\+Index\+\_\+\+Head}} dw\+\_\+head, \doxymbox{\hyperlink{group__basicdatatypes_ga5de64bb9627534a24dcbccc327916265}{Dwarf\+\_\+\+Unsigned}} dw\+\_\+number, \doxymbox{\hyperlink{group__basicdatatypes_ga5de64bb9627534a24dcbccc327916265}{Dwarf\+\_\+\+Unsigned}} \texorpdfstring{$\ast$}{*}dw\+\_\+block\+\_\+length, \doxymbox{\hyperlink{group__basicdatatypes_ga4fb2b14ce7a6d27321fa7999b46b82bd}{Dwarf\+\_\+\+Half}} \texorpdfstring{$\ast$}{*}dw\+\_\+version, \doxymbox{\hyperlink{group__basicdatatypes_ga5de64bb9627534a24dcbccc327916265}{Dwarf\+\_\+\+Unsigned}} \texorpdfstring{$\ast$}{*}dw\+\_\+offset\+\_\+into\+\_\+debug\+\_\+info, \doxymbox{\hyperlink{group__basicdatatypes_ga5de64bb9627534a24dcbccc327916265}{Dwarf\+\_\+\+Unsigned}} \texorpdfstring{$\ast$}{*}dw\+\_\+size\+\_\+of\+\_\+debug\+\_\+info\+\_\+area, \doxymbox{\hyperlink{group__basicdatatypes_ga5de64bb9627534a24dcbccc327916265}{Dwarf\+\_\+\+Unsigned}} \texorpdfstring{$\ast$}{*}dw\+\_\+count\+\_\+of\+\_\+index\+\_\+entries, \doxymbox{\hyperlink{group__allstructs_ga8d4fac0e48040b6ca91e06ffda09766a}{Dwarf\+\_\+\+Error}} \texorpdfstring{$\ast$}{*}dw\+\_\+error)
\begin{DoxyCompactList}\small\item\em Access a particular block. \end{DoxyCompactList}\item 
DW\+\_\+\+API int \doxymbox{\hyperlink{group__gnupubnames_ga82b82a766304644cc597d3fbf635be70}{dwarf\+\_\+get\+\_\+gnu\+\_\+index\+\_\+block\+\_\+entry}} (\doxymbox{\hyperlink{group__allstructs_ga8c3ab130d977f00b1927da5af4926cff}{Dwarf\+\_\+\+Gnu\+\_\+\+Index\+\_\+\+Head}} dw\+\_\+head, \doxymbox{\hyperlink{group__basicdatatypes_ga5de64bb9627534a24dcbccc327916265}{Dwarf\+\_\+\+Unsigned}} dw\+\_\+blocknumber, \doxymbox{\hyperlink{group__basicdatatypes_ga5de64bb9627534a24dcbccc327916265}{Dwarf\+\_\+\+Unsigned}} dw\+\_\+entrynumber, \doxymbox{\hyperlink{group__basicdatatypes_ga5de64bb9627534a24dcbccc327916265}{Dwarf\+\_\+\+Unsigned}} \texorpdfstring{$\ast$}{*}dw\+\_\+offset\+\_\+in\+\_\+debug\+\_\+info, const char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}dw\+\_\+name\+\_\+string, unsigned char \texorpdfstring{$\ast$}{*}dw\+\_\+flagbyte, unsigned char \texorpdfstring{$\ast$}{*}dw\+\_\+staticorglobal, unsigned char \texorpdfstring{$\ast$}{*}dw\+\_\+typeofentry, \doxymbox{\hyperlink{group__allstructs_ga8d4fac0e48040b6ca91e06ffda09766a}{Dwarf\+\_\+\+Error}} \texorpdfstring{$\ast$}{*}dw\+\_\+error)
\begin{DoxyCompactList}\small\item\em Access a particular entry of a block. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
Section .debug\+\_\+gnu\+\_\+pubnames or .debug\+\_\+gnu\+\_\+pubtypes.

This is a section created for and used by the GNU gdb debugger to access DWARF information.

Not part of standard DWARF. 

\label{doc-func-members}
\Hypertarget{group__gnupubnames_doc-func-members}
\doxysubsection{Function Documentation}
\Hypertarget{group__gnupubnames_ga8f0a6e9de1520432fc9a0dce1af324e1}\index{Fast Access to GNU .debug\_gnu\_pubnames@{Fast Access to GNU .debug\_gnu\_pubnames}!dwarf\_get\_gnu\_index\_block@{dwarf\_get\_gnu\_index\_block}}
\index{dwarf\_get\_gnu\_index\_block@{dwarf\_get\_gnu\_index\_block}!Fast Access to GNU .debug\_gnu\_pubnames@{Fast Access to GNU .debug\_gnu\_pubnames}}
\doxysubsubsection{\texorpdfstring{dwarf\_get\_gnu\_index\_block()}{dwarf\_get\_gnu\_index\_block()}}
{\footnotesize\ttfamily \label{group__gnupubnames_ga8f0a6e9de1520432fc9a0dce1af324e1} 
DW\+\_\+\+API int dwarf\+\_\+get\+\_\+gnu\+\_\+index\+\_\+block (\begin{DoxyParamCaption}\item[{\doxymbox{\hyperlink{group__allstructs_ga8c3ab130d977f00b1927da5af4926cff}{Dwarf\+\_\+\+Gnu\+\_\+\+Index\+\_\+\+Head}}}]{dw\+\_\+head}{, }\item[{\doxymbox{\hyperlink{group__basicdatatypes_ga5de64bb9627534a24dcbccc327916265}{Dwarf\+\_\+\+Unsigned}}}]{dw\+\_\+number}{, }\item[{\doxymbox{\hyperlink{group__basicdatatypes_ga5de64bb9627534a24dcbccc327916265}{Dwarf\+\_\+\+Unsigned}} \texorpdfstring{$\ast$}{*}}]{dw\+\_\+block\+\_\+length}{, }\item[{\doxymbox{\hyperlink{group__basicdatatypes_ga4fb2b14ce7a6d27321fa7999b46b82bd}{Dwarf\+\_\+\+Half}} \texorpdfstring{$\ast$}{*}}]{dw\+\_\+version}{, }\item[{\doxymbox{\hyperlink{group__basicdatatypes_ga5de64bb9627534a24dcbccc327916265}{Dwarf\+\_\+\+Unsigned}} \texorpdfstring{$\ast$}{*}}]{dw\+\_\+offset\+\_\+into\+\_\+debug\+\_\+info}{, }\item[{\doxymbox{\hyperlink{group__basicdatatypes_ga5de64bb9627534a24dcbccc327916265}{Dwarf\+\_\+\+Unsigned}} \texorpdfstring{$\ast$}{*}}]{dw\+\_\+size\+\_\+of\+\_\+debug\+\_\+info\+\_\+area}{, }\item[{\doxymbox{\hyperlink{group__basicdatatypes_ga5de64bb9627534a24dcbccc327916265}{Dwarf\+\_\+\+Unsigned}} \texorpdfstring{$\ast$}{*}}]{dw\+\_\+count\+\_\+of\+\_\+index\+\_\+entries}{, }\item[{\doxymbox{\hyperlink{group__allstructs_ga8d4fac0e48040b6ca91e06ffda09766a}{Dwarf\+\_\+\+Error}} \texorpdfstring{$\ast$}{*}}]{dw\+\_\+error}{}\end{DoxyParamCaption})}



Access a particular block. 


\begin{DoxyParams}{Parameters}
{\em dw\+\_\+head} & Pass in the Dwarf\+\_\+\+Gnu\+\_\+\+Index\+\_\+head interest. \\
\hline
{\em dw\+\_\+number} & Pass in the block number of the block of interest. 0 through dw\+\_\+index\+\_\+block\+\_\+count\+\_\+out-\/1. \\
\hline
{\em dw\+\_\+block\+\_\+length} & On success set to the length of the data in this block, in bytes. \\
\hline
{\em dw\+\_\+version} & On success set to the version number of the block. \\
\hline
{\em dw\+\_\+offset\+\_\+into\+\_\+debug\+\_\+info} & On success set to the offset, in .debug\+\_\+info, of the data for this block. The returned offset may be outside the bounds of the actual .debug\+\_\+info section, such a possibility does not cause the function to return DW\+\_\+\+DLV\+\_\+\+ERROR. \\
\hline
{\em dw\+\_\+size\+\_\+of\+\_\+debug\+\_\+info\+\_\+area} & On success set to the size in bytes, in .debug\+\_\+info, of the area this block refers to. The returned dw\+\_\+ dw\+\_\+size\+\_\+of\+\_\+debug\+\_\+info\+\_\+are plus dw\+\_\+offset\+\_\+into\+\_\+debug\+\_\+info may be outside the bounds of the actual .debug\+\_\+info section, such a possibility does not cause the function to return DW\+\_\+\+DLV\+\_\+\+ERROR. Use \doxylink{group__objectsections_ga4ab89de355ff949b51090f7516c0ec52}{dwarf\+\_\+get\+\_\+section\+\_\+max\+\_\+offsets\+\_\+d()} to learn the size of .debug\+\_\+info and optionally other sections as well. \\
\hline
{\em dw\+\_\+count\+\_\+of\+\_\+index\+\_\+entries} & On success set to the count of index entries in this particular block number. \\
\hline
{\em dw\+\_\+error} & On error dw\+\_\+error is set to point to the error details. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Returns DW\+\_\+\+DLV\+\_\+\+OK, DW\+\_\+\+DLV\+\_\+\+NO\+\_\+\+ENTRY (if the section does not exist or is empty), or, in case of an error reading the section, DW\+\_\+\+DLV\+\_\+\+ERROR. 
\end{DoxyReturn}
\Hypertarget{group__gnupubnames_ga82b82a766304644cc597d3fbf635be70}\index{Fast Access to GNU .debug\_gnu\_pubnames@{Fast Access to GNU .debug\_gnu\_pubnames}!dwarf\_get\_gnu\_index\_block\_entry@{dwarf\_get\_gnu\_index\_block\_entry}}
\index{dwarf\_get\_gnu\_index\_block\_entry@{dwarf\_get\_gnu\_index\_block\_entry}!Fast Access to GNU .debug\_gnu\_pubnames@{Fast Access to GNU .debug\_gnu\_pubnames}}
\doxysubsubsection{\texorpdfstring{dwarf\_get\_gnu\_index\_block\_entry()}{dwarf\_get\_gnu\_index\_block\_entry()}}
{\footnotesize\ttfamily \label{group__gnupubnames_ga82b82a766304644cc597d3fbf635be70} 
DW\+\_\+\+API int dwarf\+\_\+get\+\_\+gnu\+\_\+index\+\_\+block\+\_\+entry (\begin{DoxyParamCaption}\item[{\doxymbox{\hyperlink{group__allstructs_ga8c3ab130d977f00b1927da5af4926cff}{Dwarf\+\_\+\+Gnu\+\_\+\+Index\+\_\+\+Head}}}]{dw\+\_\+head}{, }\item[{\doxymbox{\hyperlink{group__basicdatatypes_ga5de64bb9627534a24dcbccc327916265}{Dwarf\+\_\+\+Unsigned}}}]{dw\+\_\+blocknumber}{, }\item[{\doxymbox{\hyperlink{group__basicdatatypes_ga5de64bb9627534a24dcbccc327916265}{Dwarf\+\_\+\+Unsigned}}}]{dw\+\_\+entrynumber}{, }\item[{\doxymbox{\hyperlink{group__basicdatatypes_ga5de64bb9627534a24dcbccc327916265}{Dwarf\+\_\+\+Unsigned}} \texorpdfstring{$\ast$}{*}}]{dw\+\_\+offset\+\_\+in\+\_\+debug\+\_\+info}{, }\item[{const char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}}]{dw\+\_\+name\+\_\+string}{, }\item[{unsigned char \texorpdfstring{$\ast$}{*}}]{dw\+\_\+flagbyte}{, }\item[{unsigned char \texorpdfstring{$\ast$}{*}}]{dw\+\_\+staticorglobal}{, }\item[{unsigned char \texorpdfstring{$\ast$}{*}}]{dw\+\_\+typeofentry}{, }\item[{\doxymbox{\hyperlink{group__allstructs_ga8d4fac0e48040b6ca91e06ffda09766a}{Dwarf\+\_\+\+Error}} \texorpdfstring{$\ast$}{*}}]{dw\+\_\+error}{}\end{DoxyParamCaption})}



Access a particular entry of a block. 

Access to a single entry in a block.


\begin{DoxyParams}{Parameters}
{\em dw\+\_\+head} & Pass in the Dwarf\+\_\+\+Gnu\+\_\+\+Index\+\_\+head interest. \\
\hline
{\em dw\+\_\+blocknumber} & Pass in the block number of the block of interest. 0 through dw\+\_\+index\+\_\+block\+\_\+count\+\_\+out-\/1. \\
\hline
{\em dw\+\_\+entrynumber} & Pass in the entry number of the entry of interest. 0 through dw\+\_\+count\+\_\+of\+\_\+index\+\_\+entries-\/1. \\
\hline
{\em dw\+\_\+offset\+\_\+in\+\_\+debug\+\_\+info} & On success set to the offset in .debug\+\_\+info relevant to this entry. \\
\hline
{\em dw\+\_\+name\+\_\+string} & On success set to the size in bytes, in .debug\+\_\+info, of the area this block refersto. \\
\hline
{\em dw\+\_\+flagbyte} & On success set to the entry flag byte content. \\
\hline
{\em dw\+\_\+staticorglobal} & On success set to the entry static/\+global letter. \\
\hline
{\em dw\+\_\+typeofentry} & On success set to the type of entry. \\
\hline
{\em dw\+\_\+error} & On error dw\+\_\+error is set to point to the error details. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Returns DW\+\_\+\+DLV\+\_\+\+OK, DW\+\_\+\+DLV\+\_\+\+NO\+\_\+\+ENTRY (if the section does not exist or is empty), or, in case of an error reading the section, DW\+\_\+\+DLV\+\_\+\+ERROR. 
\end{DoxyReturn}
\Hypertarget{group__gnupubnames_gaa95c6d82ce0e4e391b4c85277ccb9ba2}\index{Fast Access to GNU .debug\_gnu\_pubnames@{Fast Access to GNU .debug\_gnu\_pubnames}!dwarf\_get\_gnu\_index\_head@{dwarf\_get\_gnu\_index\_head}}
\index{dwarf\_get\_gnu\_index\_head@{dwarf\_get\_gnu\_index\_head}!Fast Access to GNU .debug\_gnu\_pubnames@{Fast Access to GNU .debug\_gnu\_pubnames}}
\doxysubsubsection{\texorpdfstring{dwarf\_get\_gnu\_index\_head()}{dwarf\_get\_gnu\_index\_head()}}
{\footnotesize\ttfamily \label{group__gnupubnames_gaa95c6d82ce0e4e391b4c85277ccb9ba2} 
DW\+\_\+\+API int dwarf\+\_\+get\+\_\+gnu\+\_\+index\+\_\+head (\begin{DoxyParamCaption}\item[{\doxymbox{\hyperlink{group__allstructs_gac2ba1e1c1b70a3191506b414195ca807}{Dwarf\+\_\+\+Debug}}}]{dw\+\_\+dbg}{, }\item[{\doxymbox{\hyperlink{group__basicdatatypes_ga32afecc94a71aae2be36aa279f1dded8}{Dwarf\+\_\+\+Bool}}}]{dw\+\_\+which\+\_\+section}{, }\item[{\doxymbox{\hyperlink{group__allstructs_ga8c3ab130d977f00b1927da5af4926cff}{Dwarf\+\_\+\+Gnu\+\_\+\+Index\+\_\+\+Head}} \texorpdfstring{$\ast$}{*}}]{dw\+\_\+head}{, }\item[{\doxymbox{\hyperlink{group__basicdatatypes_ga5de64bb9627534a24dcbccc327916265}{Dwarf\+\_\+\+Unsigned}} \texorpdfstring{$\ast$}{*}}]{dw\+\_\+index\+\_\+block\+\_\+count\+\_\+out}{, }\item[{\doxymbox{\hyperlink{group__allstructs_ga8d4fac0e48040b6ca91e06ffda09766a}{Dwarf\+\_\+\+Error}} \texorpdfstring{$\ast$}{*}}]{dw\+\_\+error}{}\end{DoxyParamCaption})}



Access to .debug\+\_\+gnu\+\_\+pubnames or .debug\+\_\+gnu\+\_\+pubtypes. 

Call this to get access.


\begin{DoxyParams}{Parameters}
{\em dw\+\_\+dbg} & Pass in the \doxylink{group__allstructs_gac2ba1e1c1b70a3191506b414195ca807}{Dwarf\+\_\+\+Debug} of interest. \\
\hline
{\em dw\+\_\+which\+\_\+section} & Pass in TRUE to access .debug\+\_\+gnu\+\_\+pubnames. Pass in FALSE to access .debug\+\_\+gnu\+\_\+typenames. \\
\hline
{\em dw\+\_\+head} & On success, set to a pointer to a head record allowing access to all the content of the section. \\
\hline
{\em dw\+\_\+index\+\_\+block\+\_\+count\+\_\+out} & On success, set to a count of the number of blocks of data available. \\
\hline
{\em dw\+\_\+error} & \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Returns DW\+\_\+\+DLV\+\_\+\+OK, DW\+\_\+\+DLV\+\_\+\+NO\+\_\+\+ENTRY (if the section does not exist or is empty), or, in case of an error reading the section, DW\+\_\+\+DLV\+\_\+\+ERROR. 
\end{DoxyReturn}
\Hypertarget{group__gnupubnames_ga3a2b79cf3576316ae2f8abab80944339}\index{Fast Access to GNU .debug\_gnu\_pubnames@{Fast Access to GNU .debug\_gnu\_pubnames}!dwarf\_gnu\_index\_dealloc@{dwarf\_gnu\_index\_dealloc}}
\index{dwarf\_gnu\_index\_dealloc@{dwarf\_gnu\_index\_dealloc}!Fast Access to GNU .debug\_gnu\_pubnames@{Fast Access to GNU .debug\_gnu\_pubnames}}
\doxysubsubsection{\texorpdfstring{dwarf\_gnu\_index\_dealloc()}{dwarf\_gnu\_index\_dealloc()}}
{\footnotesize\ttfamily \label{group__gnupubnames_ga3a2b79cf3576316ae2f8abab80944339} 
DW\+\_\+\+API void dwarf\+\_\+gnu\+\_\+index\+\_\+dealloc (\begin{DoxyParamCaption}\item[{\doxymbox{\hyperlink{group__allstructs_ga8c3ab130d977f00b1927da5af4926cff}{Dwarf\+\_\+\+Gnu\+\_\+\+Index\+\_\+\+Head}}}]{dw\+\_\+head}{}\end{DoxyParamCaption})}



Free resources of .debug\+\_\+gnu\+\_\+pubnames .debug\+\_\+gnu\+\_\+pubtypes. 

Call this to deallocate all memory used by dw\+\_\+head.


\begin{DoxyParams}{Parameters}
{\em dw\+\_\+head} & Pass in the Dwarf\+\_\+\+Gnu\+\_\+\+Index\+\_\+head whose data is to be deallocated. \\
\hline
\end{DoxyParams}
