\section{API Reference - Symbol Table Interface}
\label{sec:symtabAPI}

This section describes the symbol table interface for the SymtabAPI library. Currently this interface has the following capabilities:
\begin{itemize}
    \item Parsing the symbols in a binary, either on disk or in memory 
    \item Querying for symbols 
    \item Updating existing symbol information
    \item Adding new symbols 
    \item Exporting symbols in standard formats
    \item Accessing relocation and exception information
    \item Accessing and modifying header information
\end{itemize}

The symbol table information is represented by the Symtab, Symbol, Archive, and Region classes. Module, Function, and Variable provide abstractions that support common use patterns. Finally, LocalVar represents function-local variables and parameters. 

\input{API/Symtab/Symtab}
\input{API/Symtab/Module}
\input{API/Symtab/FunctionBase}
\input{API/Symtab/Function}
\input{API/Symtab/InlinedFunction}
\input{API/Symtab/Variable}
\input{API/Symtab/Symbol}
\input{API/Symtab/Archive}
\input{API/Symtab/Region}
\input{API/Symtab/ExceptionBlock}
\input{API/Symtab/LocalVar}
\input{API/Symtab/VariableLocation}
