\hypertarget{kdbmacros_8h}{}\section{kdbmacros.\+h File Reference}
\label{kdbmacros_8h}\index{kdbmacros.h@{kdbmacros.h}}


Macros by Elektra.  


This graph shows which files directly or indirectly include this file\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{kdbmacros_8h__dep__incl}
\end{center}
\end{figure}
\subsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{kdbmacros_8h_aaaed4cf1b7d8bc9e0e63eb542e629382}\label{kdbmacros_8h_aaaed4cf1b7d8bc9e0e63eb542e629382}} 
\#define \mbox{\hyperlink{kdbmacros_8h_aaaed4cf1b7d8bc9e0e63eb542e629382}{E\+L\+E\+K\+T\+R\+A\+\_\+\+Q\+U\+O\+TE}}(x)~\#x
\begin{DoxyCompactList}\small\item\em Surround a value with double quotes. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{kdbmacros_8h_a338ddec188027e86909f76c63c5f83be}\label{kdbmacros_8h_a338ddec188027e86909f76c63c5f83be}} 
\#define \mbox{\hyperlink{kdbmacros_8h_a338ddec188027e86909f76c63c5f83be}{E\+L\+E\+K\+T\+R\+A\+\_\+\+S\+T\+R\+I\+N\+G\+I\+FY}}(x)~\mbox{\hyperlink{kdbmacros_8h_aaaed4cf1b7d8bc9e0e63eb542e629382}{E\+L\+E\+K\+T\+R\+A\+\_\+\+Q\+U\+O\+TE}} (x)
\begin{DoxyCompactList}\small\item\em Surround a {\bfseries{macro value}} with double quotes. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{kdbmacros_8h_ad95ff2842e4d3ce7574de41404650815}\label{kdbmacros_8h_ad95ff2842e4d3ce7574de41404650815}} 
\#define \mbox{\hyperlink{kdbmacros_8h_ad95ff2842e4d3ce7574de41404650815}{E\+L\+E\+K\+T\+R\+A\+\_\+\+C\+O\+N\+C\+A\+T2}}(X,  Y)~X\#\#Y
\begin{DoxyCompactList}\small\item\em Concat two values. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{kdbmacros_8h_a222a47135cb5c103b09b7388a6d92caf}\label{kdbmacros_8h_a222a47135cb5c103b09b7388a6d92caf}} 
\#define \mbox{\hyperlink{kdbmacros_8h_a222a47135cb5c103b09b7388a6d92caf}{E\+L\+E\+K\+T\+R\+A\+\_\+\+C\+O\+N\+C\+AT}}(X,  Y)~\mbox{\hyperlink{kdbmacros_8h_ad95ff2842e4d3ce7574de41404650815}{E\+L\+E\+K\+T\+R\+A\+\_\+\+C\+O\+N\+C\+A\+T2}} (X, Y)
\begin{DoxyCompactList}\small\item\em Concat two {\bfseries{macro values}} \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{kdbmacros_8h_a0c44b5c214e7a7cf5ed2869c7253d79b}{E\+L\+E\+K\+T\+R\+A\+\_\+\+S\+E\+T\+\_\+\+E\+R\+R\+O\+R\+\_\+\+R\+E\+A\+D\+\_\+\+O\+N\+LY}}(info,  returned,  error)
\begin{DoxyCompactList}\small\item\em Sets error if info != returned. \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{kdbmacros_8h_a5dd9e2d021e60949f63eeb88b8b2558c}{E\+L\+E\+K\+T\+R\+A\+\_\+\+S\+Y\+M\+V\+ER}}(sym,  impl)~sym\#\#\+\_\+\#\#impl
\begin{DoxyCompactList}\small\item\em Helper macro to create a versioned name of a symbol. \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{kdbmacros_8h_a03ba43b14fd54b22eed39a4130956a5d}{E\+L\+E\+K\+T\+R\+A\+\_\+\+S\+Y\+M\+V\+E\+R\+\_\+\+D\+E\+C\+L\+A\+RE}}(ver,  sym,  impl)~E\+L\+E\+K\+T\+R\+A\+\_\+\+S\+Y\+M\+V\+E\+R\+\_\+\+C\+O\+M\+M\+A\+ND (\mbox{\hyperlink{kdbmacros_8h_a338ddec188027e86909f76c63c5f83be}{E\+L\+E\+K\+T\+R\+A\+\_\+\+S\+T\+R\+I\+N\+G\+I\+FY}} (\mbox{\hyperlink{kdbmacros_8h_a5dd9e2d021e60949f63eeb88b8b2558c}{E\+L\+E\+K\+T\+R\+A\+\_\+\+S\+Y\+M\+V\+ER}} (sym, impl)), \#sym \char`\"{}@\char`\"{} ver)
\begin{DoxyCompactList}\small\item\em Declares another version of a symbol using the {\ttfamily .symver} assembler pseudo command. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Macros by Elektra. 

Macros start with E\+L\+E\+K\+T\+R\+A\+\_\+ and are uppercase.

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


\subsection{Macro Definition Documentation}
\mbox{\Hypertarget{kdbmacros_8h_a0c44b5c214e7a7cf5ed2869c7253d79b}\label{kdbmacros_8h_a0c44b5c214e7a7cf5ed2869c7253d79b}} 
\index{kdbmacros.h@{kdbmacros.h}!ELEKTRA\_SET\_ERROR\_READ\_ONLY@{ELEKTRA\_SET\_ERROR\_READ\_ONLY}}
\index{ELEKTRA\_SET\_ERROR\_READ\_ONLY@{ELEKTRA\_SET\_ERROR\_READ\_ONLY}!kdbmacros.h@{kdbmacros.h}}
\subsubsection{\texorpdfstring{ELEKTRA\_SET\_ERROR\_READ\_ONLY}{ELEKTRA\_SET\_ERROR\_READ\_ONLY}}
{\footnotesize\ttfamily \#define E\+L\+E\+K\+T\+R\+A\+\_\+\+S\+E\+T\+\_\+\+E\+R\+R\+O\+R\+\_\+\+R\+E\+A\+D\+\_\+\+O\+N\+LY(\begin{DoxyParamCaption}\item[{}]{info,  }\item[{}]{returned,  }\item[{}]{error }\end{DoxyParamCaption})}



Sets error if info != returned. 


\begin{DoxyParams}{Parameters}
{\em info} & how the info is now (freshly received) \\
\hline
{\em returned} & how the info passed from user is \\
\hline
{\em error} & key to set error to\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
with -\/1 on error 
\end{DoxyReturn}
\mbox{\Hypertarget{kdbmacros_8h_a5dd9e2d021e60949f63eeb88b8b2558c}\label{kdbmacros_8h_a5dd9e2d021e60949f63eeb88b8b2558c}} 
\index{kdbmacros.h@{kdbmacros.h}!ELEKTRA\_SYMVER@{ELEKTRA\_SYMVER}}
\index{ELEKTRA\_SYMVER@{ELEKTRA\_SYMVER}!kdbmacros.h@{kdbmacros.h}}
\subsubsection{\texorpdfstring{ELEKTRA\_SYMVER}{ELEKTRA\_SYMVER}}
{\footnotesize\ttfamily \#define E\+L\+E\+K\+T\+R\+A\+\_\+\+S\+Y\+M\+V\+ER(\begin{DoxyParamCaption}\item[{}]{sym,  }\item[{}]{impl }\end{DoxyParamCaption})~sym\#\#\+\_\+\#\#impl}



Helper macro to create a versioned name of a symbol. 


\begin{DoxyParams}{Parameters}
{\em sym} & unversioned name of the symbol \\
\hline
{\em impl} & version suffix \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{kdbmacros_8h_a03ba43b14fd54b22eed39a4130956a5d}\label{kdbmacros_8h_a03ba43b14fd54b22eed39a4130956a5d}} 
\index{kdbmacros.h@{kdbmacros.h}!ELEKTRA\_SYMVER\_DECLARE@{ELEKTRA\_SYMVER\_DECLARE}}
\index{ELEKTRA\_SYMVER\_DECLARE@{ELEKTRA\_SYMVER\_DECLARE}!kdbmacros.h@{kdbmacros.h}}
\subsubsection{\texorpdfstring{ELEKTRA\_SYMVER\_DECLARE}{ELEKTRA\_SYMVER\_DECLARE}}
{\footnotesize\ttfamily \#define E\+L\+E\+K\+T\+R\+A\+\_\+\+S\+Y\+M\+V\+E\+R\+\_\+\+D\+E\+C\+L\+A\+RE(\begin{DoxyParamCaption}\item[{}]{ver,  }\item[{}]{sym,  }\item[{}]{impl }\end{DoxyParamCaption})~E\+L\+E\+K\+T\+R\+A\+\_\+\+S\+Y\+M\+V\+E\+R\+\_\+\+C\+O\+M\+M\+A\+ND (\mbox{\hyperlink{kdbmacros_8h_a338ddec188027e86909f76c63c5f83be}{E\+L\+E\+K\+T\+R\+A\+\_\+\+S\+T\+R\+I\+N\+G\+I\+FY}} (\mbox{\hyperlink{kdbmacros_8h_a5dd9e2d021e60949f63eeb88b8b2558c}{E\+L\+E\+K\+T\+R\+A\+\_\+\+S\+Y\+M\+V\+ER}} (sym, impl)), \#sym \char`\"{}@\char`\"{} ver)}



Declares another version of a symbol using the {\ttfamily .symver} assembler pseudo command. 


\begin{DoxyParams}{Parameters}
{\em ver} & the version name as declared versions.\+def \\
\hline
{\em sym} & the unversioned name of the symbol \\
\hline
{\em impl} & the version suffix to use for this version \\
\hline
\end{DoxyParams}
