\hypertarget{trie_8c}{}\section{trie.\+c File Reference}
\label{trie_8c}\index{trie.\+c@{trie.\+c}}


Interna of trie functionality.  


{\ttfamily \#include \char`\"{}kdbinternal.\+h\char`\"{}}\newline
Include dependency graph for trie.\+c\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{trie_8c__incl}
\end{center}
\end{figure}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
Backend $\ast$ \hyperlink{trie_8c_a675eaba21b1311eb20920e6880de7052}{trie\+Lookup} (Trie $\ast$trie, const char $\ast$name)
\begin{DoxyCompactList}\small\item\em The Trie structure. \end{DoxyCompactList}\item 
int \hyperlink{trie_8c_a2ada1ad09f79a80df86949991dba3cb7}{trie\+Close} (Trie $\ast$trie, Key $\ast$error\+Key)
\begin{DoxyCompactList}\small\item\em Closes the trie and all opened backends within. \end{DoxyCompactList}\item 
Trie $\ast$ \hyperlink{trie_8c_ab957bbaadb387f0dd73d998e4fdb5d86}{trie\+Insert} (Trie $\ast$trie, const char $\ast$name, Backend $\ast$value)
\begin{DoxyCompactList}\small\item\em Insert into trie. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Interna of trie functionality. 

\begin{DoxyCopyright}{Copyright}
B\+SD License (see L\+I\+C\+E\+N\+S\+E.\+md or \href{https://www.libelektra.org}{\tt https\+://www.\+libelektra.\+org}) 
\end{DoxyCopyright}


\subsection{Function Documentation}
\mbox{\Hypertarget{trie_8c_a2ada1ad09f79a80df86949991dba3cb7}\label{trie_8c_a2ada1ad09f79a80df86949991dba3cb7}} 
\index{trie.\+c@{trie.\+c}!trie\+Close@{trie\+Close}}
\index{trie\+Close@{trie\+Close}!trie.\+c@{trie.\+c}}
\subsubsection{\texorpdfstring{trie\+Close()}{trieClose()}}
{\footnotesize\ttfamily int trie\+Close (\begin{DoxyParamCaption}\item[{Trie $\ast$}]{trie,  }\item[{Key $\ast$}]{error\+Key }\end{DoxyParamCaption})}



Closes the trie and all opened backends within. 


\begin{DoxyParams}{Parameters}
{\em trie} & the trie to close \\
\hline
{\em error\+Key} & the key used to report warnings\\
\hline
\end{DoxyParams}

\begin{DoxyRetVals}{Return values}
{\em 0} & on success \\
\hline
\end{DoxyRetVals}
\mbox{\Hypertarget{trie_8c_ab957bbaadb387f0dd73d998e4fdb5d86}\label{trie_8c_ab957bbaadb387f0dd73d998e4fdb5d86}} 
\index{trie.\+c@{trie.\+c}!trie\+Insert@{trie\+Insert}}
\index{trie\+Insert@{trie\+Insert}!trie.\+c@{trie.\+c}}
\subsubsection{\texorpdfstring{trie\+Insert()}{trieInsert()}}
{\footnotesize\ttfamily Trie$\ast$ trie\+Insert (\begin{DoxyParamCaption}\item[{Trie $\ast$}]{trie,  }\item[{const char $\ast$}]{name,  }\item[{Backend $\ast$}]{value }\end{DoxyParamCaption})}



Insert into trie. 


\begin{DoxyParams}{Parameters}
{\em trie} & the trie to insert to (0 to create a new trie) \\
\hline
{\em name} & the key\textquotesingle{}s name to insert \\
\hline
{\em value} & the value to insert\\
\hline
\end{DoxyParams}

\begin{DoxyRetVals}{Return values}
{\em trie} & on success \\
\hline
\end{DoxyRetVals}
\mbox{\Hypertarget{trie_8c_a675eaba21b1311eb20920e6880de7052}\label{trie_8c_a675eaba21b1311eb20920e6880de7052}} 
\index{trie.\+c@{trie.\+c}!trie\+Lookup@{trie\+Lookup}}
\index{trie\+Lookup@{trie\+Lookup}!trie.\+c@{trie.\+c}}
\subsubsection{\texorpdfstring{trie\+Lookup()}{trieLookup()}}
{\footnotesize\ttfamily Backend$\ast$ trie\+Lookup (\begin{DoxyParamCaption}\item[{Trie $\ast$}]{trie,  }\item[{const char $\ast$}]{name }\end{DoxyParamCaption})}



The Trie structure. 

Lookups a backend inside the trie.

\begin{DoxyReturn}{Returns}
the backend if found 

0 otherwise 
\end{DoxyReturn}

\begin{DoxyParams}{Parameters}
{\em trie} & the trie object to work with \\
\hline
{\em key} & the name of this key will be looked up \\
\hline
\end{DoxyParams}
