\hypertarget{uthash_8h}{}\section{src/uthash.h File Reference}
\label{uthash_8h}\index{src/uthash.\+h@{src/uthash.\+h}}
{\ttfamily \#include $<$string.\+h$>$}\newline
{\ttfamily \#include $<$stddef.\+h$>$}\newline
{\ttfamily \#include $<$stdlib.\+h$>$}\newline
Include dependency graph for uthash.\+h\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=266pt]{uthash_8h__incl}
\end{center}
\end{figure}
\subsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \hyperlink{struct_u_t__hash__bucket}{U\+T\+\_\+hash\+\_\+bucket}
\item 
struct \hyperlink{struct_u_t__hash__table}{U\+T\+\_\+hash\+\_\+table}
\item 
struct \hyperlink{struct_u_t__hash__handle}{U\+T\+\_\+hash\+\_\+handle}
\end{DoxyCompactItemize}
\subsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \hyperlink{uthash_8h_aa56cef9cb86dc1f4b5d27ee3a691077e}{U\+T\+H\+A\+S\+H\+\_\+\+V\+E\+R\+S\+I\+ON}~2.\+0.\+1
\item 
\#define \hyperlink{uthash_8h_a716ba290563c2d955cb0c90d85874073}{D\+E\+C\+L\+T\+Y\+PE}(x)~(\+\_\+\+\_\+typeof(x))
\item 
\#define \hyperlink{uthash_8h_a3c736f2f2dd643f2987b2bc323e269ba}{D\+E\+C\+L\+T\+Y\+P\+E\+\_\+\+A\+S\+S\+I\+GN}(dst,  src)
\item 
\#define \hyperlink{uthash_8h_a03b52301b0ed976b6981ef33613320c1}{uthash\+\_\+fatal}(msg)~exit(-\/1)        /$\ast$ fatal error (out of memory,etc) $\ast$/
\item 
\#define \hyperlink{uthash_8h_a861013aff36c0448f1888a2b0b5836d8}{uthash\+\_\+malloc}(sz)~malloc(sz)      /$\ast$ malloc fcn                      $\ast$/
\item 
\#define \hyperlink{uthash_8h_a56cdf8c254fc700332c8e6a7263b4657}{uthash\+\_\+free}(ptr,  sz)~free(ptr)     /$\ast$ free fcn                        $\ast$/
\item 
\#define \hyperlink{uthash_8h_aa14634cb1f894d48256362bae7239be6}{uthash\+\_\+strlen}(s)~strlen(s)
\item 
\#define \hyperlink{uthash_8h_a8ca9a884b81d487034b57f87d2f97fa4}{uthash\+\_\+memcmp}(a,  b,  n)~memcmp(a,b,n)
\item 
\#define \hyperlink{uthash_8h_a7cc237d8f87de3836b5390856cfc5c86}{uthash\+\_\+noexpand\+\_\+fyi}(tbl)~/$\ast$ can be defined to log noexpand  $\ast$/
\item 
\#define \hyperlink{uthash_8h_a86ea78714da520989a6f7a764b4d71b4}{uthash\+\_\+expand\+\_\+fyi}(tbl)~/$\ast$ can be defined to log expands   $\ast$/
\item 
\#define \hyperlink{uthash_8h_a361cdc5e8d6d8fe5fae6912588ae15d0}{H\+A\+S\+H\+\_\+\+I\+N\+I\+T\+I\+A\+L\+\_\+\+N\+U\+M\+\_\+\+B\+U\+C\+K\+E\+TS}~32\+U     /$\ast$ initial number of buckets        $\ast$/
\item 
\#define \hyperlink{uthash_8h_a0b39a5cf1d6c05c43bd8530db2ec908c}{H\+A\+S\+H\+\_\+\+I\+N\+I\+T\+I\+A\+L\+\_\+\+N\+U\+M\+\_\+\+B\+U\+C\+K\+E\+T\+S\+\_\+\+L\+O\+G2}~5\+U /$\ast$ lg2 of initial number of buckets $\ast$/
\item 
\#define \hyperlink{uthash_8h_a8ae3e6473261f6c4b78c030c94f5d68f}{H\+A\+S\+H\+\_\+\+B\+K\+T\+\_\+\+C\+A\+P\+A\+C\+I\+T\+Y\+\_\+\+T\+H\+R\+E\+SH}~10\+U     /$\ast$ expand when bucket count reaches $\ast$/
\item 
\#define \hyperlink{uthash_8h_a568e95048979b8b3e4ea1567fd91c186}{E\+L\+M\+T\+\_\+\+F\+R\+O\+M\+\_\+\+HH}(tbl,  hhp)~((void$\ast$)(((char$\ast$)(hhp)) -\/ ((tbl)-\/$>$hho)))
\item 
\#define \hyperlink{uthash_8h_a46261e43585c404cccf8ab0f5c6d271e}{H\+H\+\_\+\+F\+R\+O\+M\+\_\+\+E\+L\+MT}(tbl,  elp)~((\hyperlink{struct_u_t__hash__handle}{U\+T\+\_\+hash\+\_\+handle} $\ast$)(((char$\ast$)(elp)) + ((tbl)-\/$>$hho)))
\item 
\#define \hyperlink{uthash_8h_a5bc1c6438f5d6fc56b8dcbf4bbe50271}{H\+A\+S\+H\+\_\+\+V\+A\+L\+UE}(keyptr,  keylen,  hashv)
\item 
\#define \hyperlink{uthash_8h_afc2b27fc2a6b13aece881528f45de693}{H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE}(hh,  head,  keyptr,  keylen,  hashval,  out)
\item 
\#define \hyperlink{uthash_8h_ad4a1cd39c3044936c0e49d3f372c9dbf}{H\+A\+S\+H\+\_\+\+F\+I\+ND}(hh,  head,  keyptr,  keylen,  out)
\item 
\#define \hyperlink{uthash_8h_a254f427772a1fe7a2480a8302af8f8b8}{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+M\+A\+KE}(tbl)
\item 
\#define \hyperlink{uthash_8h_ad6847ad938fc26bfd0726d7f159efd0a}{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+F\+R\+EE}(tbl)
\item 
\#define \hyperlink{uthash_8h_acaad947212056cd8bfe3d660265fb2db}{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+A\+DD}(tbl,  hashv)
\item 
\#define \hyperlink{uthash_8h_a06bfbf880899d54da35487d0d39c1009}{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+T\+E\+ST}(tbl,  hashv)~(1)
\item 
\#define \hyperlink{uthash_8h_a81f88a18c0837c77f40926074e7811db}{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+B\+Y\+T\+E\+L\+EN}~0U
\item 
\#define \hyperlink{uthash_8h_aeba971430f623b6334f565d9c7ec9de5}{H\+A\+S\+H\+\_\+\+M\+A\+K\+E\+\_\+\+T\+A\+B\+LE}(hh,  head)
\item 
\#define \hyperlink{uthash_8h_aa0104b44f5a911bfda7fd9f939e1594f}{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+U\+E\+\_\+\+I\+N\+O\+R\+D\+ER}(hh,  head,  fieldname,  keylen\+\_\+in,  hashval,  add,  replaced,  cmpfcn)
\item 
\#define \hyperlink{uthash_8h_ab7fc2175a455ed8e8351737b4f8b2842}{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE}(hh,  head,  fieldname,  keylen\+\_\+in,  hashval,  add,  replaced)
\item 
\#define \hyperlink{uthash_8h_a9897aa8b1ace582e7bbdef05f21cbc54}{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+CE}(hh,  head,  fieldname,  keylen\+\_\+in,  add,  replaced)
\item 
\#define \hyperlink{uthash_8h_aa6d7a872d8855c9b8bf55d62e8eb0430}{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+I\+N\+O\+R\+D\+ER}(hh,  head,  fieldname,  keylen\+\_\+in,  add,  replaced,  cmpfcn)
\item 
\#define \hyperlink{uthash_8h_aeec8f4c804ae5b87ebded933252804fd}{H\+A\+S\+H\+\_\+\+A\+P\+P\+E\+N\+D\+\_\+\+L\+I\+ST}(hh,  head,  add)
\item 
\#define \hyperlink{uthash_8h_aae1fa76ff12cbf5328bcf4a2375d055f}{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+T\+R\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+U\+E\+\_\+\+I\+N\+O\+R\+D\+ER}(hh,  head,  keyptr,  keylen\+\_\+in,  hashval,  add,  cmpfcn)
\item 
\#define \hyperlink{uthash_8h_a5a5f675b8bbeaff0a25de5f91330eae8}{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+T\+R\+\_\+\+I\+N\+O\+R\+D\+ER}(hh,  head,  keyptr,  keylen\+\_\+in,  add,  cmpfcn)
\item 
\#define \hyperlink{uthash_8h_a7caae291b965a3f618661927481bf960}{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+U\+E\+\_\+\+I\+N\+O\+R\+D\+ER}(hh,  head,  fieldname,  keylen\+\_\+in,  hashval,  add,  cmpfcn)~\hyperlink{uthash_8h_aae1fa76ff12cbf5328bcf4a2375d055f}{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+T\+R\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+U\+E\+\_\+\+I\+N\+O\+R\+D\+ER}(hh, head, \&((add)-\/$>$fieldname), keylen\+\_\+in, hashval, add, cmpfcn)
\item 
\#define \hyperlink{uthash_8h_a1befde1b63e6bc0cb4d6b34cb863eebe}{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+I\+N\+O\+R\+D\+ER}(hh,  head,  fieldname,  keylen\+\_\+in,  add,  cmpfcn)~\hyperlink{uthash_8h_a5a5f675b8bbeaff0a25de5f91330eae8}{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+T\+R\+\_\+\+I\+N\+O\+R\+D\+ER}(hh, head, \&((add)-\/$>$fieldname), keylen\+\_\+in, add, cmpfcn)
\item 
\#define \hyperlink{uthash_8h_aa0e4d9dcfb23a6616c6439aa0d4a3f4d}{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+T\+R\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE}(hh,  head,  keyptr,  keylen\+\_\+in,  hashval,  add)
\item 
\#define \hyperlink{uthash_8h_a0b7468360b5c788762cdb2ccf9cd4d26}{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+TR}(hh,  head,  keyptr,  keylen\+\_\+in,  add)
\item 
\#define \hyperlink{uthash_8h_a34a0dfca975d8b5ae83d9c307c8d6305}{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE}(hh,  head,  fieldname,  keylen\+\_\+in,  hashval,  add)~\hyperlink{uthash_8h_aa0e4d9dcfb23a6616c6439aa0d4a3f4d}{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+T\+R\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE}(hh, head, \&((add)-\/$>$fieldname), keylen\+\_\+in, hashval, add)
\item 
\#define \hyperlink{uthash_8h_aaf01358e257c8d838eb5e4b189f0c399}{H\+A\+S\+H\+\_\+\+A\+DD}(hh,  head,  fieldname,  keylen\+\_\+in,  add)~\hyperlink{uthash_8h_a0b7468360b5c788762cdb2ccf9cd4d26}{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+TR}(hh, head, \&((add)-\/$>$fieldname), keylen\+\_\+in, add)
\item 
\#define \hyperlink{uthash_8h_a4d7691544128a6ef265f3e4fa5ed3113}{H\+A\+S\+H\+\_\+\+T\+O\+\_\+\+B\+KT}(hashv,  num\+\_\+bkts,  bkt)
\item 
\#define \hyperlink{uthash_8h_a3f83117e1108d63844a58d2d79c3b980}{H\+A\+S\+H\+\_\+\+D\+E\+L\+E\+TE}(hh,  head,  delptr)
\item 
\#define \hyperlink{uthash_8h_a214529083adfab2fa8cd402d2eeb0a84}{H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+S\+TR}(head,  findstr,  out)~\hyperlink{uthash_8h_ad4a1cd39c3044936c0e49d3f372c9dbf}{H\+A\+S\+H\+\_\+\+F\+I\+ND}(hh,head,findstr,(unsigned)\hyperlink{uthash_8h_aa14634cb1f894d48256362bae7239be6}{uthash\+\_\+strlen}(findstr),out)
\item 
\#define \hyperlink{uthash_8h_a9724951736f3985f74df17638c8a7885}{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+S\+TR}(head,  strfield,  add)~\hyperlink{uthash_8h_aaf01358e257c8d838eb5e4b189f0c399}{H\+A\+S\+H\+\_\+\+A\+DD}(hh,head,strfield\mbox{[}0\mbox{]},(unsigned)\hyperlink{uthash_8h_aa14634cb1f894d48256362bae7239be6}{uthash\+\_\+strlen}(add-\/$>$strfield),add)
\item 
\#define \hyperlink{uthash_8h_a069b31f4fbc11094d8d3d5e3b1a641db}{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+S\+TR}(head,  strfield,  add,  replaced)~\hyperlink{uthash_8h_a9897aa8b1ace582e7bbdef05f21cbc54}{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+CE}(hh,head,strfield\mbox{[}0\mbox{]},(unsigned)\hyperlink{uthash_8h_aa14634cb1f894d48256362bae7239be6}{uthash\+\_\+strlen}(add-\/$>$strfield),add,replaced)
\item 
\#define \hyperlink{uthash_8h_aadcb19b940348f3141bd51505ede0142}{H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+I\+NT}(head,  findint,  out)~\hyperlink{uthash_8h_ad4a1cd39c3044936c0e49d3f372c9dbf}{H\+A\+S\+H\+\_\+\+F\+I\+ND}(hh,head,findint,sizeof(int),out)
\item 
\#define \hyperlink{uthash_8h_acf85835471af894e354efb7e346698f3}{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+I\+NT}(head,  intfield,  add)~\hyperlink{uthash_8h_aaf01358e257c8d838eb5e4b189f0c399}{H\+A\+S\+H\+\_\+\+A\+DD}(hh,head,intfield,sizeof(int),add)
\item 
\#define \hyperlink{uthash_8h_a43124846a2747f48f45bf9f16631a6da}{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+I\+NT}(head,  intfield,  add,  replaced)~\hyperlink{uthash_8h_a9897aa8b1ace582e7bbdef05f21cbc54}{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+CE}(hh,head,intfield,sizeof(int),add,replaced)
\item 
\#define \hyperlink{uthash_8h_a26a887f8e31952034becac0cf446f6c3}{H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+P\+TR}(head,  findptr,  out)~\hyperlink{uthash_8h_ad4a1cd39c3044936c0e49d3f372c9dbf}{H\+A\+S\+H\+\_\+\+F\+I\+ND}(hh,head,findptr,sizeof(void $\ast$),out)
\item 
\#define \hyperlink{uthash_8h_a2ad1f84ef1ba9df99fa2ada38cb61823}{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+P\+TR}(head,  ptrfield,  add)~\hyperlink{uthash_8h_aaf01358e257c8d838eb5e4b189f0c399}{H\+A\+S\+H\+\_\+\+A\+DD}(hh,head,ptrfield,sizeof(void $\ast$),add)
\item 
\#define \hyperlink{uthash_8h_a13bcd1176a34c0a924fbf187c897bf68}{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+P\+TR}(head,  ptrfield,  add,  replaced)~\hyperlink{uthash_8h_a9897aa8b1ace582e7bbdef05f21cbc54}{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+CE}(hh,head,ptrfield,sizeof(void $\ast$),add,replaced)
\item 
\#define \hyperlink{uthash_8h_a48b7ed374602dcb236501aa23a971f05}{H\+A\+S\+H\+\_\+\+D\+EL}(head,  delptr)~\hyperlink{uthash_8h_a3f83117e1108d63844a58d2d79c3b980}{H\+A\+S\+H\+\_\+\+D\+E\+L\+E\+TE}(hh,head,delptr)
\item 
\#define \hyperlink{uthash_8h_a7d882fadb26a4e6c13c134d8be4d0759}{H\+A\+S\+H\+\_\+\+F\+S\+CK}(hh,  head)
\item 
\#define \hyperlink{uthash_8h_a44f9d46e2cc79652492e5dd3e6c40a15}{H\+A\+S\+H\+\_\+\+E\+M\+I\+T\+\_\+\+K\+EY}(hh,  head,  keyptr,  fieldlen)
\item 
\#define \hyperlink{uthash_8h_abd3356419b386c379116393700a751d3}{H\+A\+S\+H\+\_\+\+F\+CN}~\hyperlink{uthash_8h_a724ff23efd254654ac087ed60233c465}{H\+A\+S\+H\+\_\+\+J\+EN}
\item 
\#define \hyperlink{uthash_8h_a7fb1644fa1d057a1c124c7548b9146b3}{H\+A\+S\+H\+\_\+\+B\+ER}(key,  keylen,  hashv)
\item 
\#define \hyperlink{uthash_8h_ae8cf38dbd44a475eb0fa4cdb9988e13a}{H\+A\+S\+H\+\_\+\+S\+AX}(key,  keylen,  hashv)
\item 
\#define \hyperlink{uthash_8h_a65c61fa2c45a7d0cb918407d725e94bc}{H\+A\+S\+H\+\_\+\+F\+NV}(key,  keylen,  hashv)
\item 
\#define \hyperlink{uthash_8h_a22c77754346c75bfafd872d2d49c6dc7}{H\+A\+S\+H\+\_\+\+O\+AT}(key,  keylen,  hashv)
\item 
\#define \hyperlink{uthash_8h_a6d37144e54d2bd49eb88fbfd04c59dc5}{H\+A\+S\+H\+\_\+\+J\+E\+N\+\_\+\+M\+IX}(a,  b,  c)
\item 
\#define \hyperlink{uthash_8h_a724ff23efd254654ac087ed60233c465}{H\+A\+S\+H\+\_\+\+J\+EN}(key,  keylen,  hashv)
\item 
\#define \hyperlink{uthash_8h_abc7d71657be8975a51684e41029b7964}{get16bits}(d)
\item 
\#define \hyperlink{uthash_8h_a91480d6a21f082d49d20faeee0295cbb}{H\+A\+S\+H\+\_\+\+S\+FH}(key,  keylen,  hashv)
\item 
\#define \hyperlink{uthash_8h_a54951c7b798e8da9931d2b607e97b619}{H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+I\+N\+\_\+\+B\+KT}(tbl,  hh,  head,  keyptr,  keylen\+\_\+in,  hashval,  out)
\item 
\#define \hyperlink{uthash_8h_a78e11adee321f45c5cb31ff2d6eb0348}{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+T\+O\+\_\+\+B\+KT}(head,  addhh)
\item 
\#define \hyperlink{uthash_8h_a1b2d6f694f98cf6350cdd18225cb3f78}{H\+A\+S\+H\+\_\+\+D\+E\+L\+\_\+\+I\+N\+\_\+\+B\+KT}(hh,  head,  hh\+\_\+del)
\item 
\#define \hyperlink{uthash_8h_a6439fd6271474e61b1840fbf83132f03}{H\+A\+S\+H\+\_\+\+E\+X\+P\+A\+N\+D\+\_\+\+B\+U\+C\+K\+E\+TS}(tbl)
\item 
\#define \hyperlink{uthash_8h_a88d2ab40956878caacd02c214f7e8f15}{H\+A\+S\+H\+\_\+\+S\+O\+RT}(head,  cmpfcn)~\hyperlink{uthash_8h_a388b4071dcff005154f431d3d3025fbd}{H\+A\+S\+H\+\_\+\+S\+RT}(hh,head,cmpfcn)
\item 
\#define \hyperlink{uthash_8h_a388b4071dcff005154f431d3d3025fbd}{H\+A\+S\+H\+\_\+\+S\+RT}(hh,  head,  cmpfcn)
\item 
\#define \hyperlink{uthash_8h_ad190366f7a476ece79bd628240a5fc93}{H\+A\+S\+H\+\_\+\+S\+E\+L\+E\+CT}(hh\+\_\+dst,  dst,  hh\+\_\+src,  src,  cond)
\item 
\#define \hyperlink{uthash_8h_a0512b3f7a824275579ec82643ef2cc23}{H\+A\+S\+H\+\_\+\+C\+L\+E\+AR}(hh,  head)
\item 
\#define \hyperlink{uthash_8h_ab35e223d7385dfbe3c42758f502f4c04}{H\+A\+S\+H\+\_\+\+O\+V\+E\+R\+H\+E\+AD}(hh,  head)
\item 
\#define \hyperlink{uthash_8h_a4d524042f1fcb976d8bccae9e4cc63d6}{H\+A\+S\+H\+\_\+\+I\+T\+ER}(hh,  head,  el,  tmp)
\item 
\#define \hyperlink{uthash_8h_a7d3edf55a3ee4da1a0e1b477c314342f}{H\+A\+S\+H\+\_\+\+C\+O\+U\+NT}(head)~\hyperlink{uthash_8h_a6ea9e661cd8c35eff1fdcd5731127edd}{H\+A\+S\+H\+\_\+\+C\+NT}(hh,head)
\item 
\#define \hyperlink{uthash_8h_a6ea9e661cd8c35eff1fdcd5731127edd}{H\+A\+S\+H\+\_\+\+C\+NT}(hh,  head)~((head != N\+U\+LL)?((head)-\/$>$hh.\+tbl-\/$>$num\+\_\+items)\+:0\+U)
\item 
\#define \hyperlink{uthash_8h_a4a7a46b9b92a9c73e4f9321e8e6b6bb2}{H\+A\+S\+H\+\_\+\+S\+I\+G\+N\+A\+T\+U\+RE}~0xa0111fe1u
\item 
\#define \hyperlink{uthash_8h_a18a33f4269f05c1e81ce54edbc0ffca6}{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+S\+I\+G\+N\+A\+T\+U\+RE}~0xb12220f2u
\end{DoxyCompactItemize}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
typedef unsigned int \hyperlink{uthash_8h_a435d1572bf3f880d55459d9805097f62}{uint32\+\_\+t}
\item 
typedef unsigned char \hyperlink{uthash_8h_aba7bc1797add20fe3efdf37ced1182c5}{uint8\+\_\+t}
\item 
typedef struct \hyperlink{struct_u_t__hash__bucket}{U\+T\+\_\+hash\+\_\+bucket} \hyperlink{uthash_8h_a3ba3da0ca59a082c35a0d6b52e803ddf}{U\+T\+\_\+hash\+\_\+bucket}
\item 
typedef struct \hyperlink{struct_u_t__hash__table}{U\+T\+\_\+hash\+\_\+table} \hyperlink{uthash_8h_a0758074b9942c2ad076610b3e0ce548e}{U\+T\+\_\+hash\+\_\+table}
\item 
typedef struct \hyperlink{struct_u_t__hash__handle}{U\+T\+\_\+hash\+\_\+handle} \hyperlink{uthash_8h_a0e3a99ed9f776349720d0c362f956fb6}{U\+T\+\_\+hash\+\_\+handle}
\end{DoxyCompactItemize}


\subsection{Macro Definition Documentation}
\mbox{\Hypertarget{uthash_8h_a716ba290563c2d955cb0c90d85874073}\label{uthash_8h_a716ba290563c2d955cb0c90d85874073}} 
\index{uthash.\+h@{uthash.\+h}!D\+E\+C\+L\+T\+Y\+PE@{D\+E\+C\+L\+T\+Y\+PE}}
\index{D\+E\+C\+L\+T\+Y\+PE@{D\+E\+C\+L\+T\+Y\+PE}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{D\+E\+C\+L\+T\+Y\+PE}{DECLTYPE}}
{\footnotesize\ttfamily \#define D\+E\+C\+L\+T\+Y\+PE(\begin{DoxyParamCaption}\item[{}]{x }\end{DoxyParamCaption})~(\+\_\+\+\_\+typeof(x))}



Definition at line 48 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a3c736f2f2dd643f2987b2bc323e269ba}\label{uthash_8h_a3c736f2f2dd643f2987b2bc323e269ba}} 
\index{uthash.\+h@{uthash.\+h}!D\+E\+C\+L\+T\+Y\+P\+E\+\_\+\+A\+S\+S\+I\+GN@{D\+E\+C\+L\+T\+Y\+P\+E\+\_\+\+A\+S\+S\+I\+GN}}
\index{D\+E\+C\+L\+T\+Y\+P\+E\+\_\+\+A\+S\+S\+I\+GN@{D\+E\+C\+L\+T\+Y\+P\+E\+\_\+\+A\+S\+S\+I\+GN}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{D\+E\+C\+L\+T\+Y\+P\+E\+\_\+\+A\+S\+S\+I\+GN}{DECLTYPE\_ASSIGN}}
{\footnotesize\ttfamily \#define D\+E\+C\+L\+T\+Y\+P\+E\+\_\+\+A\+S\+S\+I\+GN(\begin{DoxyParamCaption}\item[{}]{dst,  }\item[{}]{src }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}
\textcolor{keywordflow}{do} \{                                                                             \(\backslash\)
  (dst) = \hyperlink{uthash_8h_a716ba290563c2d955cb0c90d85874073}{DECLTYPE}(dst)(src);                                                    \(\backslash\)
\} \textcolor{keywordflow}{while} (0)
\end{DoxyCode}


Definition at line 58 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a568e95048979b8b3e4ea1567fd91c186}\label{uthash_8h_a568e95048979b8b3e4ea1567fd91c186}} 
\index{uthash.\+h@{uthash.\+h}!E\+L\+M\+T\+\_\+\+F\+R\+O\+M\+\_\+\+HH@{E\+L\+M\+T\+\_\+\+F\+R\+O\+M\+\_\+\+HH}}
\index{E\+L\+M\+T\+\_\+\+F\+R\+O\+M\+\_\+\+HH@{E\+L\+M\+T\+\_\+\+F\+R\+O\+M\+\_\+\+HH}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{E\+L\+M\+T\+\_\+\+F\+R\+O\+M\+\_\+\+HH}{ELMT\_FROM\_HH}}
{\footnotesize\ttfamily \#define E\+L\+M\+T\+\_\+\+F\+R\+O\+M\+\_\+\+HH(\begin{DoxyParamCaption}\item[{}]{tbl,  }\item[{}]{hhp }\end{DoxyParamCaption})~((void$\ast$)(((char$\ast$)(hhp)) -\/ ((tbl)-\/$>$hho)))}



Definition at line 110 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_abc7d71657be8975a51684e41029b7964}\label{uthash_8h_abc7d71657be8975a51684e41029b7964}} 
\index{uthash.\+h@{uthash.\+h}!get16bits@{get16bits}}
\index{get16bits@{get16bits}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{get16bits}{get16bits}}
{\footnotesize\ttfamily \#define get16bits(\begin{DoxyParamCaption}\item[{}]{d }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}
((((\hyperlink{uthash_8h_a435d1572bf3f880d55459d9805097f62}{uint32\_t})(((\textcolor{keyword}{const} \hyperlink{uthash_8h_aba7bc1797add20fe3efdf37ced1182c5}{uint8\_t} *)(d))[1])) << 8)             \(\backslash\)
                       +(\hyperlink{uthash_8h_a435d1572bf3f880d55459d9805097f62}{uint32\_t})(((\textcolor{keyword}{const} \hyperlink{uthash_8h_aba7bc1797add20fe3efdf37ced1182c5}{uint8\_t} *)(d))[0]) )
\end{DoxyCode}


Definition at line 587 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_aaf01358e257c8d838eb5e4b189f0c399}\label{uthash_8h_aaf01358e257c8d838eb5e4b189f0c399}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+A\+DD@{H\+A\+S\+H\+\_\+\+A\+DD}}
\index{H\+A\+S\+H\+\_\+\+A\+DD@{H\+A\+S\+H\+\_\+\+A\+DD}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+A\+DD}{HASH\_ADD}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+A\+DD(\begin{DoxyParamCaption}\item[{}]{hh,  }\item[{}]{head,  }\item[{}]{fieldname,  }\item[{}]{keylen\+\_\+in,  }\item[{}]{add }\end{DoxyParamCaption})~\hyperlink{uthash_8h_a0b7468360b5c788762cdb2ccf9cd4d26}{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+TR}(hh, head, \&((add)-\/$>$fieldname), keylen\+\_\+in, add)}



Definition at line 317 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a34a0dfca975d8b5ae83d9c307c8d6305}\label{uthash_8h_a34a0dfca975d8b5ae83d9c307c8d6305}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE@{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE}}
\index{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE@{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE}{HASH\_ADD\_BYHASHVALUE}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE(\begin{DoxyParamCaption}\item[{}]{hh,  }\item[{}]{head,  }\item[{}]{fieldname,  }\item[{}]{keylen\+\_\+in,  }\item[{}]{hashval,  }\item[{}]{add }\end{DoxyParamCaption})~\hyperlink{uthash_8h_aa0e4d9dcfb23a6616c6439aa0d4a3f4d}{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+T\+R\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE}(hh, head, \&((add)-\/$>$fieldname), keylen\+\_\+in, hashval, add)}



Definition at line 314 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a7caae291b965a3f618661927481bf960}\label{uthash_8h_a7caae291b965a3f618661927481bf960}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+U\+E\+\_\+\+I\+N\+O\+R\+D\+ER@{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+U\+E\+\_\+\+I\+N\+O\+R\+D\+ER}}
\index{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+U\+E\+\_\+\+I\+N\+O\+R\+D\+ER@{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+U\+E\+\_\+\+I\+N\+O\+R\+D\+ER}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+U\+E\+\_\+\+I\+N\+O\+R\+D\+ER}{HASH\_ADD\_BYHASHVALUE\_INORDER}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+U\+E\+\_\+\+I\+N\+O\+R\+D\+ER(\begin{DoxyParamCaption}\item[{}]{hh,  }\item[{}]{head,  }\item[{}]{fieldname,  }\item[{}]{keylen\+\_\+in,  }\item[{}]{hashval,  }\item[{}]{add,  }\item[{}]{cmpfcn }\end{DoxyParamCaption})~\hyperlink{uthash_8h_aae1fa76ff12cbf5328bcf4a2375d055f}{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+T\+R\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+U\+E\+\_\+\+I\+N\+O\+R\+D\+ER}(hh, head, \&((add)-\/$>$fieldname), keylen\+\_\+in, hashval, add, cmpfcn)}



Definition at line 278 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a1befde1b63e6bc0cb4d6b34cb863eebe}\label{uthash_8h_a1befde1b63e6bc0cb4d6b34cb863eebe}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+I\+N\+O\+R\+D\+ER@{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+I\+N\+O\+R\+D\+ER}}
\index{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+I\+N\+O\+R\+D\+ER@{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+I\+N\+O\+R\+D\+ER}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+I\+N\+O\+R\+D\+ER}{HASH\_ADD\_INORDER}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+I\+N\+O\+R\+D\+ER(\begin{DoxyParamCaption}\item[{}]{hh,  }\item[{}]{head,  }\item[{}]{fieldname,  }\item[{}]{keylen\+\_\+in,  }\item[{}]{add,  }\item[{}]{cmpfcn }\end{DoxyParamCaption})~\hyperlink{uthash_8h_a5a5f675b8bbeaff0a25de5f91330eae8}{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+T\+R\+\_\+\+I\+N\+O\+R\+D\+ER}(hh, head, \&((add)-\/$>$fieldname), keylen\+\_\+in, add, cmpfcn)}



Definition at line 281 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_acf85835471af894e354efb7e346698f3}\label{uthash_8h_acf85835471af894e354efb7e346698f3}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+I\+NT@{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+I\+NT}}
\index{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+I\+NT@{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+I\+NT}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+I\+NT}{HASH\_ADD\_INT}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+I\+NT(\begin{DoxyParamCaption}\item[{}]{head,  }\item[{}]{intfield,  }\item[{}]{add }\end{DoxyParamCaption})~\hyperlink{uthash_8h_aaf01358e257c8d838eb5e4b189f0c399}{H\+A\+S\+H\+\_\+\+A\+DD}(hh,head,intfield,sizeof(int),add)}



Definition at line 382 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a0b7468360b5c788762cdb2ccf9cd4d26}\label{uthash_8h_a0b7468360b5c788762cdb2ccf9cd4d26}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+TR@{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+TR}}
\index{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+TR@{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+TR}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+TR}{HASH\_ADD\_KEYPTR}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+TR(\begin{DoxyParamCaption}\item[{}]{hh,  }\item[{}]{head,  }\item[{}]{keyptr,  }\item[{}]{keylen\+\_\+in,  }\item[{}]{add }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}
\textcolor{keywordflow}{do} \{                                                                             \(\backslash\)
  unsigned \_ha\_hashv;                                                            \(\backslash\)
  HASH\_VALUE(keyptr, keylen\_in, \_ha\_hashv);                                      \(\backslash\)
  HASH\_ADD\_KEYPTR\_BYHASHVALUE(hh, head, keyptr, keylen\_in, \_ha\_hashv, add);      \(\backslash\)
\} \textcolor{keywordflow}{while} (0)
\end{DoxyCode}


Definition at line 307 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_aa0e4d9dcfb23a6616c6439aa0d4a3f4d}\label{uthash_8h_aa0e4d9dcfb23a6616c6439aa0d4a3f4d}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+T\+R\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE@{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+T\+R\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE}}
\index{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+T\+R\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE@{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+T\+R\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+T\+R\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE}{HASH\_ADD\_KEYPTR\_BYHASHVALUE}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+T\+R\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE(\begin{DoxyParamCaption}\item[{}]{hh,  }\item[{}]{head,  }\item[{}]{keyptr,  }\item[{}]{keylen\+\_\+in,  }\item[{}]{hashval,  }\item[{}]{add }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}
\textcolor{keywordflow}{do} \{                                                                             \(\backslash\)
  unsigned \_ha\_bkt;                                                              \(\backslash\)
  (add)->hh.hashv = (hashval);                                                   \(\backslash\)
  (add)->hh.key = (\textcolor{keywordtype}{char}*) (keyptr);                                              \(\backslash\)
  (add)->hh.keylen = (\textcolor{keywordtype}{unsigned}) (keylen\_in);                                     \(\backslash\)
  if (!(head)) \{                                                                 \(\backslash\)
    (add)->hh.next = NULL;                                                       \(\backslash\)
    (add)->hh.prev = NULL;                                                       \(\backslash\)
    (head) = (add);                                                              \(\backslash\)
    HASH\_MAKE\_TABLE(hh, head);                                                   \(\backslash\)
  \} \textcolor{keywordflow}{else} \{                                                                       \(\backslash\)
    (add)->hh.tbl = (head)->hh.tbl;                                              \(\backslash\)
    HASH\_APPEND\_LIST(hh, head, add);                                             \(\backslash\)
  \}                                                                              \(\backslash\)
  (head)->hh.tbl->num\_items++;                                                   \(\backslash\)
  \hyperlink{uthash_8h_a4d7691544128a6ef265f3e4fa5ed3113}{HASH\_TO\_BKT}(hashval, (head)->hh.tbl->num\_buckets, \_ha\_bkt);                    \(\backslash\)
  HASH\_ADD\_TO\_BKT((head)->hh.tbl->buckets[\_ha\_bkt], &(add)->hh);                 \(\backslash\)
  HASH\_BLOOM\_ADD((head)->hh.tbl, hashval);                                       \(\backslash\)
  HASH\_EMIT\_KEY(hh, head, keyptr, keylen\_in);                                    \(\backslash\)
  HASH\_FSCK(hh, head);                                                           \(\backslash\)
\} \textcolor{keywordflow}{while} (0)
\end{DoxyCode}


Definition at line 284 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_aae1fa76ff12cbf5328bcf4a2375d055f}\label{uthash_8h_aae1fa76ff12cbf5328bcf4a2375d055f}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+T\+R\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+U\+E\+\_\+\+I\+N\+O\+R\+D\+ER@{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+T\+R\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+U\+E\+\_\+\+I\+N\+O\+R\+D\+ER}}
\index{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+T\+R\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+U\+E\+\_\+\+I\+N\+O\+R\+D\+ER@{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+T\+R\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+U\+E\+\_\+\+I\+N\+O\+R\+D\+ER}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+T\+R\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+U\+E\+\_\+\+I\+N\+O\+R\+D\+ER}{HASH\_ADD\_KEYPTR\_BYHASHVALUE\_INORDER}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+T\+R\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+U\+E\+\_\+\+I\+N\+O\+R\+D\+ER(\begin{DoxyParamCaption}\item[{}]{hh,  }\item[{}]{head,  }\item[{}]{keyptr,  }\item[{}]{keylen\+\_\+in,  }\item[{}]{hashval,  }\item[{}]{add,  }\item[{}]{cmpfcn }\end{DoxyParamCaption})}



Definition at line 233 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a5a5f675b8bbeaff0a25de5f91330eae8}\label{uthash_8h_a5a5f675b8bbeaff0a25de5f91330eae8}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+T\+R\+\_\+\+I\+N\+O\+R\+D\+ER@{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+T\+R\+\_\+\+I\+N\+O\+R\+D\+ER}}
\index{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+T\+R\+\_\+\+I\+N\+O\+R\+D\+ER@{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+T\+R\+\_\+\+I\+N\+O\+R\+D\+ER}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+T\+R\+\_\+\+I\+N\+O\+R\+D\+ER}{HASH\_ADD\_KEYPTR\_INORDER}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+K\+E\+Y\+P\+T\+R\+\_\+\+I\+N\+O\+R\+D\+ER(\begin{DoxyParamCaption}\item[{}]{hh,  }\item[{}]{head,  }\item[{}]{keyptr,  }\item[{}]{keylen\+\_\+in,  }\item[{}]{add,  }\item[{}]{cmpfcn }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}
\textcolor{keywordflow}{do} \{                                                                             \(\backslash\)
  unsigned \_hs\_hashv;                                                            \(\backslash\)
  HASH\_VALUE(keyptr, keylen\_in, \_hs\_hashv);                                      \(\backslash\)
  HASH\_ADD\_KEYPTR\_BYHASHVALUE\_INORDER(hh, head, keyptr, keylen\_in, \_hs\_hashv, add, cmpfcn); \(\backslash\)
\} \textcolor{keywordflow}{while} (0)
\end{DoxyCode}


Definition at line 271 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a2ad1f84ef1ba9df99fa2ada38cb61823}\label{uthash_8h_a2ad1f84ef1ba9df99fa2ada38cb61823}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+P\+TR@{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+P\+TR}}
\index{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+P\+TR@{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+P\+TR}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+P\+TR}{HASH\_ADD\_PTR}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+P\+TR(\begin{DoxyParamCaption}\item[{}]{head,  }\item[{}]{ptrfield,  }\item[{}]{add }\end{DoxyParamCaption})~\hyperlink{uthash_8h_aaf01358e257c8d838eb5e4b189f0c399}{H\+A\+S\+H\+\_\+\+A\+DD}(hh,head,ptrfield,sizeof(void $\ast$),add)}



Definition at line 388 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a9724951736f3985f74df17638c8a7885}\label{uthash_8h_a9724951736f3985f74df17638c8a7885}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+S\+TR@{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+S\+TR}}
\index{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+S\+TR@{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+S\+TR}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+S\+TR}{HASH\_ADD\_STR}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+S\+TR(\begin{DoxyParamCaption}\item[{}]{head,  }\item[{}]{strfield,  }\item[{}]{add }\end{DoxyParamCaption})~\hyperlink{uthash_8h_aaf01358e257c8d838eb5e4b189f0c399}{H\+A\+S\+H\+\_\+\+A\+DD}(hh,head,strfield\mbox{[}0\mbox{]},(unsigned)\hyperlink{uthash_8h_aa14634cb1f894d48256362bae7239be6}{uthash\+\_\+strlen}(add-\/$>$strfield),add)}



Definition at line 376 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a78e11adee321f45c5cb31ff2d6eb0348}\label{uthash_8h_a78e11adee321f45c5cb31ff2d6eb0348}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+T\+O\+\_\+\+B\+KT@{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+T\+O\+\_\+\+B\+KT}}
\index{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+T\+O\+\_\+\+B\+KT@{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+T\+O\+\_\+\+B\+KT}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+T\+O\+\_\+\+B\+KT}{HASH\_ADD\_TO\_BKT}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+A\+D\+D\+\_\+\+T\+O\+\_\+\+B\+KT(\begin{DoxyParamCaption}\item[{}]{head,  }\item[{}]{addhh }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}
\textcolor{keywordflow}{do} \{                                                                             \(\backslash\)
 head.count++;                                                                   \(\backslash\)
 (addhh)->hh\_next = head.hh\_head;                                                \(\backslash\)
 (addhh)->hh\_prev = NULL;                                                        \(\backslash\)
 if (head.hh\_head != NULL) \{ (head).hh\_head->hh\_prev = (addhh); \}                \(\backslash\)
 (head).hh\_head=addhh;                                                           \(\backslash\)
 if ((head.count >= ((head.expand\_mult+1U) * \hyperlink{uthash_8h_a8ae3e6473261f6c4b78c030c94f5d68f}{HASH\_BKT\_CAPACITY\_THRESH}))          \(\backslash\)
     && ((addhh)->tbl->noexpand != 1U)) \{                                        \(\backslash\)
       HASH\_EXPAND\_BUCKETS((addhh)->tbl);                                        \(\backslash\)
 \}                                                                               \(\backslash\)
\} \textcolor{keywordflow}{while} (0)
\end{DoxyCode}


Definition at line 736 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_aeec8f4c804ae5b87ebded933252804fd}\label{uthash_8h_aeec8f4c804ae5b87ebded933252804fd}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+A\+P\+P\+E\+N\+D\+\_\+\+L\+I\+ST@{H\+A\+S\+H\+\_\+\+A\+P\+P\+E\+N\+D\+\_\+\+L\+I\+ST}}
\index{H\+A\+S\+H\+\_\+\+A\+P\+P\+E\+N\+D\+\_\+\+L\+I\+ST@{H\+A\+S\+H\+\_\+\+A\+P\+P\+E\+N\+D\+\_\+\+L\+I\+ST}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+A\+P\+P\+E\+N\+D\+\_\+\+L\+I\+ST}{HASH\_APPEND\_LIST}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+A\+P\+P\+E\+N\+D\+\_\+\+L\+I\+ST(\begin{DoxyParamCaption}\item[{}]{hh,  }\item[{}]{head,  }\item[{}]{add }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}
\textcolor{keywordflow}{do} \{                                                                             \(\backslash\)
  (add)->hh.next = NULL;                                                         \(\backslash\)
  (add)->hh.prev = \hyperlink{uthash_8h_a568e95048979b8b3e4ea1567fd91c186}{ELMT\_FROM\_HH}((head)->hh.tbl, (head)->hh.tbl->tail);           \(\backslash\)
  (head)->hh.tbl->tail->next = (add);                                            \(\backslash\)
  (head)->hh.tbl->tail = &((add)->hh);                                           \(\backslash\)
\} \textcolor{keywordflow}{while} (0)
\end{DoxyCode}


Definition at line 225 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a7fb1644fa1d057a1c124c7548b9146b3}\label{uthash_8h_a7fb1644fa1d057a1c124c7548b9146b3}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+B\+ER@{H\+A\+S\+H\+\_\+\+B\+ER}}
\index{H\+A\+S\+H\+\_\+\+B\+ER@{H\+A\+S\+H\+\_\+\+B\+ER}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+B\+ER}{HASH\_BER}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+B\+ER(\begin{DoxyParamCaption}\item[{}]{key,  }\item[{}]{keylen,  }\item[{}]{hashv }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}
\textcolor{keywordflow}{do} \{                                                                             \(\backslash\)
  unsigned \_hb\_keylen=(unsigned)keylen;                                          \(\backslash\)
  const \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} *\_hb\_key=(\textcolor{keyword}{const} \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char}*)(key);                      \(\backslash\)
  (hashv) = 0;                                                                   \(\backslash\)
  while (\_hb\_keylen-- != 0U) \{                                                   \(\backslash\)
      (hashv) = (((hashv) << 5) + (hashv)) + *\_hb\_key++;                         \(\backslash\)
  \}                                                                              \(\backslash\)
\} \textcolor{keywordflow}{while} (0)
\end{DoxyCode}


Definition at line 477 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a8ae3e6473261f6c4b78c030c94f5d68f}\label{uthash_8h_a8ae3e6473261f6c4b78c030c94f5d68f}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+B\+K\+T\+\_\+\+C\+A\+P\+A\+C\+I\+T\+Y\+\_\+\+T\+H\+R\+E\+SH@{H\+A\+S\+H\+\_\+\+B\+K\+T\+\_\+\+C\+A\+P\+A\+C\+I\+T\+Y\+\_\+\+T\+H\+R\+E\+SH}}
\index{H\+A\+S\+H\+\_\+\+B\+K\+T\+\_\+\+C\+A\+P\+A\+C\+I\+T\+Y\+\_\+\+T\+H\+R\+E\+SH@{H\+A\+S\+H\+\_\+\+B\+K\+T\+\_\+\+C\+A\+P\+A\+C\+I\+T\+Y\+\_\+\+T\+H\+R\+E\+SH}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+B\+K\+T\+\_\+\+C\+A\+P\+A\+C\+I\+T\+Y\+\_\+\+T\+H\+R\+E\+SH}{HASH\_BKT\_CAPACITY\_THRESH}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+B\+K\+T\+\_\+\+C\+A\+P\+A\+C\+I\+T\+Y\+\_\+\+T\+H\+R\+E\+SH~10\+U     /$\ast$ expand when bucket count reaches $\ast$/}



Definition at line 107 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_acaad947212056cd8bfe3d660265fb2db}\label{uthash_8h_acaad947212056cd8bfe3d660265fb2db}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+A\+DD@{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+A\+DD}}
\index{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+A\+DD@{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+A\+DD}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+A\+DD}{HASH\_BLOOM\_ADD}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+A\+DD(\begin{DoxyParamCaption}\item[{}]{tbl,  }\item[{}]{hashv }\end{DoxyParamCaption})}



Definition at line 167 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a81f88a18c0837c77f40926074e7811db}\label{uthash_8h_a81f88a18c0837c77f40926074e7811db}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+B\+Y\+T\+E\+L\+EN@{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+B\+Y\+T\+E\+L\+EN}}
\index{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+B\+Y\+T\+E\+L\+EN@{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+B\+Y\+T\+E\+L\+EN}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+B\+Y\+T\+E\+L\+EN}{HASH\_BLOOM\_BYTELEN}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+B\+Y\+T\+E\+L\+EN~0U}



Definition at line 169 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_ad6847ad938fc26bfd0726d7f159efd0a}\label{uthash_8h_ad6847ad938fc26bfd0726d7f159efd0a}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+F\+R\+EE@{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+F\+R\+EE}}
\index{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+F\+R\+EE@{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+F\+R\+EE}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+F\+R\+EE}{HASH\_BLOOM\_FREE}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+F\+R\+EE(\begin{DoxyParamCaption}\item[{}]{tbl }\end{DoxyParamCaption})}



Definition at line 166 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a254f427772a1fe7a2480a8302af8f8b8}\label{uthash_8h_a254f427772a1fe7a2480a8302af8f8b8}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+M\+A\+KE@{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+M\+A\+KE}}
\index{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+M\+A\+KE@{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+M\+A\+KE}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+M\+A\+KE}{HASH\_BLOOM\_MAKE}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+M\+A\+KE(\begin{DoxyParamCaption}\item[{}]{tbl }\end{DoxyParamCaption})}



Definition at line 165 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a18a33f4269f05c1e81ce54edbc0ffca6}\label{uthash_8h_a18a33f4269f05c1e81ce54edbc0ffca6}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+S\+I\+G\+N\+A\+T\+U\+RE@{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+S\+I\+G\+N\+A\+T\+U\+RE}}
\index{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+S\+I\+G\+N\+A\+T\+U\+RE@{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+S\+I\+G\+N\+A\+T\+U\+RE}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+S\+I\+G\+N\+A\+T\+U\+RE}{HASH\_BLOOM\_SIGNATURE}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+S\+I\+G\+N\+A\+T\+U\+RE~0xb12220f2u}



Definition at line 1028 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a06bfbf880899d54da35487d0d39c1009}\label{uthash_8h_a06bfbf880899d54da35487d0d39c1009}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+T\+E\+ST@{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+T\+E\+ST}}
\index{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+T\+E\+ST@{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+T\+E\+ST}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+T\+E\+ST}{HASH\_BLOOM\_TEST}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+B\+L\+O\+O\+M\+\_\+\+T\+E\+ST(\begin{DoxyParamCaption}\item[{}]{tbl,  }\item[{}]{hashv }\end{DoxyParamCaption})~(1)}



Definition at line 168 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a0512b3f7a824275579ec82643ef2cc23}\label{uthash_8h_a0512b3f7a824275579ec82643ef2cc23}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+C\+L\+E\+AR@{H\+A\+S\+H\+\_\+\+C\+L\+E\+AR}}
\index{H\+A\+S\+H\+\_\+\+C\+L\+E\+AR@{H\+A\+S\+H\+\_\+\+C\+L\+E\+AR}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+C\+L\+E\+AR}{HASH\_CLEAR}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+C\+L\+E\+AR(\begin{DoxyParamCaption}\item[{}]{hh,  }\item[{}]{head }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}
\textcolor{keywordflow}{do} \{                                                                             \(\backslash\)
  if (head != NULL) \{                                                            \(\backslash\)
    uthash\_free((head)->hh.tbl->buckets,                                         \(\backslash\)
                (head)->hh.tbl->num\_buckets*\textcolor{keyword}{sizeof}(\textcolor{keyword}{struct} \hyperlink{struct_u_t__hash__bucket}{UT\_hash\_bucket}));      \(\backslash\)
    HASH\_BLOOM\_FREE((head)->hh.tbl);                                             \(\backslash\)
    uthash\_free((head)->hh.tbl, \textcolor{keyword}{sizeof}(\hyperlink{struct_u_t__hash__table}{UT\_hash\_table}));                          \(\backslash\)
    (head)=NULL;                                                                 \(\backslash\)
  \}                                                                              \(\backslash\)
\} \textcolor{keywordflow}{while} (0)
\end{DoxyCode}


Definition at line 974 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a6ea9e661cd8c35eff1fdcd5731127edd}\label{uthash_8h_a6ea9e661cd8c35eff1fdcd5731127edd}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+C\+NT@{H\+A\+S\+H\+\_\+\+C\+NT}}
\index{H\+A\+S\+H\+\_\+\+C\+NT@{H\+A\+S\+H\+\_\+\+C\+NT}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+C\+NT}{HASH\_CNT}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+C\+NT(\begin{DoxyParamCaption}\item[{}]{hh,  }\item[{}]{head }\end{DoxyParamCaption})~((head != N\+U\+LL)?((head)-\/$>$hh.\+tbl-\/$>$num\+\_\+items)\+:0\+U)}



Definition at line 1004 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a7d3edf55a3ee4da1a0e1b477c314342f}\label{uthash_8h_a7d3edf55a3ee4da1a0e1b477c314342f}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+C\+O\+U\+NT@{H\+A\+S\+H\+\_\+\+C\+O\+U\+NT}}
\index{H\+A\+S\+H\+\_\+\+C\+O\+U\+NT@{H\+A\+S\+H\+\_\+\+C\+O\+U\+NT}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+C\+O\+U\+NT}{HASH\_COUNT}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+C\+O\+U\+NT(\begin{DoxyParamCaption}\item[{}]{head }\end{DoxyParamCaption})~\hyperlink{uthash_8h_a6ea9e661cd8c35eff1fdcd5731127edd}{H\+A\+S\+H\+\_\+\+C\+NT}(hh,head)}



Definition at line 1003 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a48b7ed374602dcb236501aa23a971f05}\label{uthash_8h_a48b7ed374602dcb236501aa23a971f05}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+D\+EL@{H\+A\+S\+H\+\_\+\+D\+EL}}
\index{H\+A\+S\+H\+\_\+\+D\+EL@{H\+A\+S\+H\+\_\+\+D\+EL}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+D\+EL}{HASH\_DEL}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+D\+EL(\begin{DoxyParamCaption}\item[{}]{head,  }\item[{}]{delptr }\end{DoxyParamCaption})~\hyperlink{uthash_8h_a3f83117e1108d63844a58d2d79c3b980}{H\+A\+S\+H\+\_\+\+D\+E\+L\+E\+TE}(hh,head,delptr)}



Definition at line 392 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a1b2d6f694f98cf6350cdd18225cb3f78}\label{uthash_8h_a1b2d6f694f98cf6350cdd18225cb3f78}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+D\+E\+L\+\_\+\+I\+N\+\_\+\+B\+KT@{H\+A\+S\+H\+\_\+\+D\+E\+L\+\_\+\+I\+N\+\_\+\+B\+KT}}
\index{H\+A\+S\+H\+\_\+\+D\+E\+L\+\_\+\+I\+N\+\_\+\+B\+KT@{H\+A\+S\+H\+\_\+\+D\+E\+L\+\_\+\+I\+N\+\_\+\+B\+KT}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+D\+E\+L\+\_\+\+I\+N\+\_\+\+B\+KT}{HASH\_DEL\_IN\_BKT}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+D\+E\+L\+\_\+\+I\+N\+\_\+\+B\+KT(\begin{DoxyParamCaption}\item[{}]{hh,  }\item[{}]{head,  }\item[{}]{hh\+\_\+del }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}
(head).count--;                                                              \(\backslash\)
    if ((head).hh\_head == hh\_del) \{                                              \(\backslash\)
      (head).hh\_head = hh\_del->hh\_next;                                          \(\backslash\)
    \}                                                                            \(\backslash\)
    if (hh\_del->hh\_prev) \{                                                       \(\backslash\)
        hh\_del->hh\_prev->hh\_next = hh\_del->hh\_next;                              \(\backslash\)
    \}                                                                            \(\backslash\)
    if (hh\_del->hh\_next) \{                                                       \(\backslash\)
        hh\_del->hh\_next->hh\_prev = hh\_del->hh\_prev;                              \(\backslash\)
    \}
\end{DoxyCode}


Definition at line 750 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a3f83117e1108d63844a58d2d79c3b980}\label{uthash_8h_a3f83117e1108d63844a58d2d79c3b980}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+D\+E\+L\+E\+TE@{H\+A\+S\+H\+\_\+\+D\+E\+L\+E\+TE}}
\index{H\+A\+S\+H\+\_\+\+D\+E\+L\+E\+TE@{H\+A\+S\+H\+\_\+\+D\+E\+L\+E\+TE}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+D\+E\+L\+E\+TE}{HASH\_DELETE}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+D\+E\+L\+E\+TE(\begin{DoxyParamCaption}\item[{}]{hh,  }\item[{}]{head,  }\item[{}]{delptr }\end{DoxyParamCaption})}



Definition at line 337 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a44f9d46e2cc79652492e5dd3e6c40a15}\label{uthash_8h_a44f9d46e2cc79652492e5dd3e6c40a15}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+E\+M\+I\+T\+\_\+\+K\+EY@{H\+A\+S\+H\+\_\+\+E\+M\+I\+T\+\_\+\+K\+EY}}
\index{H\+A\+S\+H\+\_\+\+E\+M\+I\+T\+\_\+\+K\+EY@{H\+A\+S\+H\+\_\+\+E\+M\+I\+T\+\_\+\+K\+EY}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+E\+M\+I\+T\+\_\+\+K\+EY}{HASH\_EMIT\_KEY}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+E\+M\+I\+T\+\_\+\+K\+EY(\begin{DoxyParamCaption}\item[{}]{hh,  }\item[{}]{head,  }\item[{}]{keyptr,  }\item[{}]{fieldlen }\end{DoxyParamCaption})}



Definition at line 466 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a6439fd6271474e61b1840fbf83132f03}\label{uthash_8h_a6439fd6271474e61b1840fbf83132f03}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+E\+X\+P\+A\+N\+D\+\_\+\+B\+U\+C\+K\+E\+TS@{H\+A\+S\+H\+\_\+\+E\+X\+P\+A\+N\+D\+\_\+\+B\+U\+C\+K\+E\+TS}}
\index{H\+A\+S\+H\+\_\+\+E\+X\+P\+A\+N\+D\+\_\+\+B\+U\+C\+K\+E\+TS@{H\+A\+S\+H\+\_\+\+E\+X\+P\+A\+N\+D\+\_\+\+B\+U\+C\+K\+E\+TS}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+E\+X\+P\+A\+N\+D\+\_\+\+B\+U\+C\+K\+E\+TS}{HASH\_EXPAND\_BUCKETS}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+E\+X\+P\+A\+N\+D\+\_\+\+B\+U\+C\+K\+E\+TS(\begin{DoxyParamCaption}\item[{}]{tbl }\end{DoxyParamCaption})}



Definition at line 791 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_abd3356419b386c379116393700a751d3}\label{uthash_8h_abd3356419b386c379116393700a751d3}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+F\+CN@{H\+A\+S\+H\+\_\+\+F\+CN}}
\index{H\+A\+S\+H\+\_\+\+F\+CN@{H\+A\+S\+H\+\_\+\+F\+CN}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+F\+CN}{HASH\_FCN}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+F\+CN~\hyperlink{uthash_8h_a724ff23efd254654ac087ed60233c465}{H\+A\+S\+H\+\_\+\+J\+EN}}



Definition at line 473 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_ad4a1cd39c3044936c0e49d3f372c9dbf}\label{uthash_8h_ad4a1cd39c3044936c0e49d3f372c9dbf}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+F\+I\+ND@{H\+A\+S\+H\+\_\+\+F\+I\+ND}}
\index{H\+A\+S\+H\+\_\+\+F\+I\+ND@{H\+A\+S\+H\+\_\+\+F\+I\+ND}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+F\+I\+ND}{HASH\_FIND}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+F\+I\+ND(\begin{DoxyParamCaption}\item[{}]{hh,  }\item[{}]{head,  }\item[{}]{keyptr,  }\item[{}]{keylen,  }\item[{}]{out }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}
\textcolor{keywordflow}{do} \{                                                                             \(\backslash\)
  unsigned \_hf\_hashv;                                                            \(\backslash\)
  HASH\_VALUE(keyptr, keylen, \_hf\_hashv);                                         \(\backslash\)
  HASH\_FIND\_BYHASHVALUE(hh, head, keyptr, keylen, \_hf\_hashv, out);               \(\backslash\)
\} \textcolor{keywordflow}{while} (0)
\end{DoxyCode}


Definition at line 131 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_afc2b27fc2a6b13aece881528f45de693}\label{uthash_8h_afc2b27fc2a6b13aece881528f45de693}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE@{H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE}}
\index{H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE@{H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE}{HASH\_FIND\_BYHASHVALUE}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE(\begin{DoxyParamCaption}\item[{}]{hh,  }\item[{}]{head,  }\item[{}]{keyptr,  }\item[{}]{keylen,  }\item[{}]{hashval,  }\item[{}]{out }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}
\textcolor{keywordflow}{do} \{                                                                             \(\backslash\)
  (out) = NULL;                                                                  \(\backslash\)
  if (head) \{                                                                    \(\backslash\)
    unsigned \_hf\_bkt;                                                            \(\backslash\)
    HASH\_TO\_BKT(hashval, (head)->hh.tbl->num\_buckets, \_hf\_bkt);                  \(\backslash\)
    if (\hyperlink{uthash_8h_a06bfbf880899d54da35487d0d39c1009}{HASH\_BLOOM\_TEST}((head)->hh.tbl, hashval) != 0) \{                         \(\backslash\)
      HASH\_FIND\_IN\_BKT((head)->hh.tbl, hh, (head)->hh.tbl->buckets[ \_hf\_bkt ], keyptr, keylen, hashval, out
      ); \(\backslash\)
    \}                                                                            \(\backslash\)
  \}                                                                              \(\backslash\)
\} \textcolor{keywordflow}{while} (0)
\end{DoxyCode}


Definition at line 119 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a54951c7b798e8da9931d2b607e97b619}\label{uthash_8h_a54951c7b798e8da9931d2b607e97b619}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+I\+N\+\_\+\+B\+KT@{H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+I\+N\+\_\+\+B\+KT}}
\index{H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+I\+N\+\_\+\+B\+KT@{H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+I\+N\+\_\+\+B\+KT}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+I\+N\+\_\+\+B\+KT}{HASH\_FIND\_IN\_BKT}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+I\+N\+\_\+\+B\+KT(\begin{DoxyParamCaption}\item[{}]{tbl,  }\item[{}]{hh,  }\item[{}]{head,  }\item[{}]{keyptr,  }\item[{}]{keylen\+\_\+in,  }\item[{}]{hashval,  }\item[{}]{out }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}
\textcolor{keywordflow}{do} \{                                                                             \(\backslash\)
  if ((head).hh\_head != NULL) \{                                                  \(\backslash\)
    DECLTYPE\_ASSIGN(out, \hyperlink{uthash_8h_a568e95048979b8b3e4ea1567fd91c186}{ELMT\_FROM\_HH}(tbl, (head).hh\_head));                     \(\backslash\)
  \} \textcolor{keywordflow}{else} \{                                                                       \(\backslash\)
    (out) = NULL;                                                                \(\backslash\)
  \}                                                                              \(\backslash\)
  while ((out) != NULL) \{                                                        \(\backslash\)
    if ((out)->hh.hashv == (hashval) && (out)->hh.keylen == (keylen\_in)) \{       \(\backslash\)
      if (\hyperlink{uthash_8h_a8ca9a884b81d487034b57f87d2f97fa4}{uthash\_memcmp}((out)->hh.key, keyptr, keylen\_in) == 0) \{                \(\backslash\)
        break;                                                                   \(\backslash\)
      \}                                                                          \(\backslash\)
    \}                                                                            \(\backslash\)
    if ((out)->hh.hh\_next != NULL) \{                                             \(\backslash\)
      DECLTYPE\_ASSIGN(out, \hyperlink{uthash_8h_a568e95048979b8b3e4ea1567fd91c186}{ELMT\_FROM\_HH}(tbl, (out)->hh.hh\_next));                \(\backslash\)
    \} \textcolor{keywordflow}{else} \{                                                                     \(\backslash\)
      (out) = NULL;                                                              \(\backslash\)
    \}                                                                            \(\backslash\)
  \}                                                                              \(\backslash\)
\} \textcolor{keywordflow}{while} (0)
\end{DoxyCode}


Definition at line 714 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_aadcb19b940348f3141bd51505ede0142}\label{uthash_8h_aadcb19b940348f3141bd51505ede0142}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+I\+NT@{H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+I\+NT}}
\index{H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+I\+NT@{H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+I\+NT}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+I\+NT}{HASH\_FIND\_INT}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+I\+NT(\begin{DoxyParamCaption}\item[{}]{head,  }\item[{}]{findint,  }\item[{}]{out }\end{DoxyParamCaption})~\hyperlink{uthash_8h_ad4a1cd39c3044936c0e49d3f372c9dbf}{H\+A\+S\+H\+\_\+\+F\+I\+ND}(hh,head,findint,sizeof(int),out)}



Definition at line 380 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a26a887f8e31952034becac0cf446f6c3}\label{uthash_8h_a26a887f8e31952034becac0cf446f6c3}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+P\+TR@{H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+P\+TR}}
\index{H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+P\+TR@{H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+P\+TR}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+P\+TR}{HASH\_FIND\_PTR}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+P\+TR(\begin{DoxyParamCaption}\item[{}]{head,  }\item[{}]{findptr,  }\item[{}]{out }\end{DoxyParamCaption})~\hyperlink{uthash_8h_ad4a1cd39c3044936c0e49d3f372c9dbf}{H\+A\+S\+H\+\_\+\+F\+I\+ND}(hh,head,findptr,sizeof(void $\ast$),out)}



Definition at line 386 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a214529083adfab2fa8cd402d2eeb0a84}\label{uthash_8h_a214529083adfab2fa8cd402d2eeb0a84}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+S\+TR@{H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+S\+TR}}
\index{H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+S\+TR@{H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+S\+TR}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+S\+TR}{HASH\_FIND\_STR}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+F\+I\+N\+D\+\_\+\+S\+TR(\begin{DoxyParamCaption}\item[{}]{head,  }\item[{}]{findstr,  }\item[{}]{out }\end{DoxyParamCaption})~\hyperlink{uthash_8h_ad4a1cd39c3044936c0e49d3f372c9dbf}{H\+A\+S\+H\+\_\+\+F\+I\+ND}(hh,head,findstr,(unsigned)\hyperlink{uthash_8h_aa14634cb1f894d48256362bae7239be6}{uthash\+\_\+strlen}(findstr),out)}



Definition at line 374 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a65c61fa2c45a7d0cb918407d725e94bc}\label{uthash_8h_a65c61fa2c45a7d0cb918407d725e94bc}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+F\+NV@{H\+A\+S\+H\+\_\+\+F\+NV}}
\index{H\+A\+S\+H\+\_\+\+F\+NV@{H\+A\+S\+H\+\_\+\+F\+NV}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+F\+NV}{HASH\_FNV}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+F\+NV(\begin{DoxyParamCaption}\item[{}]{key,  }\item[{}]{keylen,  }\item[{}]{hashv }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}
\textcolor{keywordflow}{do} \{                                                                             \(\backslash\)
  unsigned \_fn\_i;                                                                \(\backslash\)
  const \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} *\_hf\_key=(\textcolor{keyword}{const} \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char}*)(key);                      \(\backslash\)
  hashv = 2166136261U;                                                           \(\backslash\)
  for(\_fn\_i=0; \_fn\_i < keylen; \_fn\_i++) \{                                        \(\backslash\)
      hashv = hashv ^ \_hf\_key[\_fn\_i];                                            \(\backslash\)
      hashv = hashv * 16777619U;                                                 \(\backslash\)
  \}                                                                              \(\backslash\)
\} \textcolor{keywordflow}{while} (0)
\end{DoxyCode}


Definition at line 500 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a7d882fadb26a4e6c13c134d8be4d0759}\label{uthash_8h_a7d882fadb26a4e6c13c134d8be4d0759}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+F\+S\+CK@{H\+A\+S\+H\+\_\+\+F\+S\+CK}}
\index{H\+A\+S\+H\+\_\+\+F\+S\+CK@{H\+A\+S\+H\+\_\+\+F\+S\+CK}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+F\+S\+CK}{HASH\_FSCK}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+F\+S\+CK(\begin{DoxyParamCaption}\item[{}]{hh,  }\item[{}]{head }\end{DoxyParamCaption})}



Definition at line 452 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a361cdc5e8d6d8fe5fae6912588ae15d0}\label{uthash_8h_a361cdc5e8d6d8fe5fae6912588ae15d0}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+I\+N\+I\+T\+I\+A\+L\+\_\+\+N\+U\+M\+\_\+\+B\+U\+C\+K\+E\+TS@{H\+A\+S\+H\+\_\+\+I\+N\+I\+T\+I\+A\+L\+\_\+\+N\+U\+M\+\_\+\+B\+U\+C\+K\+E\+TS}}
\index{H\+A\+S\+H\+\_\+\+I\+N\+I\+T\+I\+A\+L\+\_\+\+N\+U\+M\+\_\+\+B\+U\+C\+K\+E\+TS@{H\+A\+S\+H\+\_\+\+I\+N\+I\+T\+I\+A\+L\+\_\+\+N\+U\+M\+\_\+\+B\+U\+C\+K\+E\+TS}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+I\+N\+I\+T\+I\+A\+L\+\_\+\+N\+U\+M\+\_\+\+B\+U\+C\+K\+E\+TS}{HASH\_INITIAL\_NUM\_BUCKETS}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+I\+N\+I\+T\+I\+A\+L\+\_\+\+N\+U\+M\+\_\+\+B\+U\+C\+K\+E\+TS~32\+U     /$\ast$ initial number of buckets        $\ast$/}



Definition at line 105 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a0b39a5cf1d6c05c43bd8530db2ec908c}\label{uthash_8h_a0b39a5cf1d6c05c43bd8530db2ec908c}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+I\+N\+I\+T\+I\+A\+L\+\_\+\+N\+U\+M\+\_\+\+B\+U\+C\+K\+E\+T\+S\+\_\+\+L\+O\+G2@{H\+A\+S\+H\+\_\+\+I\+N\+I\+T\+I\+A\+L\+\_\+\+N\+U\+M\+\_\+\+B\+U\+C\+K\+E\+T\+S\+\_\+\+L\+O\+G2}}
\index{H\+A\+S\+H\+\_\+\+I\+N\+I\+T\+I\+A\+L\+\_\+\+N\+U\+M\+\_\+\+B\+U\+C\+K\+E\+T\+S\+\_\+\+L\+O\+G2@{H\+A\+S\+H\+\_\+\+I\+N\+I\+T\+I\+A\+L\+\_\+\+N\+U\+M\+\_\+\+B\+U\+C\+K\+E\+T\+S\+\_\+\+L\+O\+G2}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+I\+N\+I\+T\+I\+A\+L\+\_\+\+N\+U\+M\+\_\+\+B\+U\+C\+K\+E\+T\+S\+\_\+\+L\+O\+G2}{HASH\_INITIAL\_NUM\_BUCKETS\_LOG2}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+I\+N\+I\+T\+I\+A\+L\+\_\+\+N\+U\+M\+\_\+\+B\+U\+C\+K\+E\+T\+S\+\_\+\+L\+O\+G2~5\+U /$\ast$ lg2 of initial number of buckets $\ast$/}



Definition at line 106 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a4d524042f1fcb976d8bccae9e4cc63d6}\label{uthash_8h_a4d524042f1fcb976d8bccae9e4cc63d6}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+I\+T\+ER@{H\+A\+S\+H\+\_\+\+I\+T\+ER}}
\index{H\+A\+S\+H\+\_\+\+I\+T\+ER@{H\+A\+S\+H\+\_\+\+I\+T\+ER}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+I\+T\+ER}{HASH\_ITER}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+I\+T\+ER(\begin{DoxyParamCaption}\item[{}]{hh,  }\item[{}]{head,  }\item[{}]{el,  }\item[{}]{tmp }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}
\textcolor{keywordflow}{for}(((el)=(head)), ((tmp)=\hyperlink{uthash_8h_a716ba290563c2d955cb0c90d85874073}{DECLTYPE}(el)((head!=NULL)?(head)->hh.next:NULL));      \(\backslash\)
  (el) != NULL; ((el)=(tmp)), ((tmp)=\hyperlink{uthash_8h_a716ba290563c2d955cb0c90d85874073}{DECLTYPE}(el)((tmp!=NULL)?(tmp)->hh.next:NULL)))
\end{DoxyCode}


Definition at line 997 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a724ff23efd254654ac087ed60233c465}\label{uthash_8h_a724ff23efd254654ac087ed60233c465}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+J\+EN@{H\+A\+S\+H\+\_\+\+J\+EN}}
\index{H\+A\+S\+H\+\_\+\+J\+EN@{H\+A\+S\+H\+\_\+\+J\+EN}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+J\+EN}{HASH\_JEN}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+J\+EN(\begin{DoxyParamCaption}\item[{}]{key,  }\item[{}]{keylen,  }\item[{}]{hashv }\end{DoxyParamCaption})}



Definition at line 539 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a6d37144e54d2bd49eb88fbfd04c59dc5}\label{uthash_8h_a6d37144e54d2bd49eb88fbfd04c59dc5}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+J\+E\+N\+\_\+\+M\+IX@{H\+A\+S\+H\+\_\+\+J\+E\+N\+\_\+\+M\+IX}}
\index{H\+A\+S\+H\+\_\+\+J\+E\+N\+\_\+\+M\+IX@{H\+A\+S\+H\+\_\+\+J\+E\+N\+\_\+\+M\+IX}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+J\+E\+N\+\_\+\+M\+IX}{HASH\_JEN\_MIX}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+J\+E\+N\+\_\+\+M\+IX(\begin{DoxyParamCaption}\item[{}]{a,  }\item[{}]{b,  }\item[{}]{c }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}
\textcolor{keywordflow}{do} \{                                                                             \(\backslash\)
  a -= b; a -= c; a ^= ( c >> 13 );                                              \(\backslash\)
  b -= c; b -= a; b ^= ( a << 8 );                                               \(\backslash\)
  c -= a; c -= b; c ^= ( b >> 13 );                                              \(\backslash\)
  a -= b; a -= c; a ^= ( c >> 12 );                                              \(\backslash\)
  b -= c; b -= a; b ^= ( a << 16 );                                              \(\backslash\)
  c -= a; c -= b; c ^= ( b >> 5 );                                               \(\backslash\)
  a -= b; a -= c; a ^= ( c >> 3 );                                               \(\backslash\)
  b -= c; b -= a; b ^= ( a << 10 );                                              \(\backslash\)
  c -= a; c -= b; c ^= ( b >> 15 );                                              \(\backslash\)
\} \textcolor{keywordflow}{while} (0)
\end{DoxyCode}


Definition at line 526 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_aeba971430f623b6334f565d9c7ec9de5}\label{uthash_8h_aeba971430f623b6334f565d9c7ec9de5}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+M\+A\+K\+E\+\_\+\+T\+A\+B\+LE@{H\+A\+S\+H\+\_\+\+M\+A\+K\+E\+\_\+\+T\+A\+B\+LE}}
\index{H\+A\+S\+H\+\_\+\+M\+A\+K\+E\+\_\+\+T\+A\+B\+LE@{H\+A\+S\+H\+\_\+\+M\+A\+K\+E\+\_\+\+T\+A\+B\+LE}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+M\+A\+K\+E\+\_\+\+T\+A\+B\+LE}{HASH\_MAKE\_TABLE}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+M\+A\+K\+E\+\_\+\+T\+A\+B\+LE(\begin{DoxyParamCaption}\item[{}]{hh,  }\item[{}]{head }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}
\textcolor{keywordflow}{do} \{                                                                             \(\backslash\)
  (head)->hh.tbl = (\hyperlink{struct_u_t__hash__table}{UT\_hash\_table}*)\hyperlink{uthash_8h_a861013aff36c0448f1888a2b0b5836d8}{uthash\_malloc}(                                
      \(\backslash\)
                  \textcolor{keyword}{sizeof}(\hyperlink{struct_u_t__hash__table}{UT\_hash\_table}));                                        \(\backslash\)
  if (!((head)->hh.tbl))  \{ \hyperlink{uthash_8h_a03b52301b0ed976b6981ef33613320c1}{uthash\_fatal}( \textcolor{stringliteral}{"out of memory"}); \}                    \(\backslash\)
  memset((head)->hh.tbl, 0, \textcolor{keyword}{sizeof}(\hyperlink{struct_u_t__hash__table}{UT\_hash\_table}));                              \(\backslash\)
  (head)->hh.tbl->tail = &((head)->hh);                                          \(\backslash\)
  (head)->hh.tbl->num\_buckets = \hyperlink{uthash_8h_a361cdc5e8d6d8fe5fae6912588ae15d0}{HASH\_INITIAL\_NUM\_BUCKETS};                        \(\backslash\)
  (head)->hh.tbl->log2\_num\_buckets = \hyperlink{uthash_8h_a0b39a5cf1d6c05c43bd8530db2ec908c}{HASH\_INITIAL\_NUM\_BUCKETS\_LOG2};           
         \(\backslash\)
  (head)->hh.tbl->hho = (\textcolor{keywordtype}{char}*)(&(head)->hh) - (\textcolor{keywordtype}{char}*)(head);                    \(\backslash\)
  (head)->hh.tbl->buckets = (\hyperlink{struct_u_t__hash__bucket}{UT\_hash\_bucket}*)\hyperlink{uthash_8h_a861013aff36c0448f1888a2b0b5836d8}{uthash\_malloc}(                     
       \(\backslash\)
          \hyperlink{uthash_8h_a361cdc5e8d6d8fe5fae6912588ae15d0}{HASH\_INITIAL\_NUM\_BUCKETS}*\textcolor{keyword}{sizeof}(\textcolor{keyword}{struct} 
      \hyperlink{struct_u_t__hash__bucket}{UT\_hash\_bucket}));               \(\backslash\)
  if (! (head)->hh.tbl->buckets) \{ \hyperlink{uthash_8h_a03b52301b0ed976b6981ef33613320c1}{uthash\_fatal}( \textcolor{stringliteral}{"out of memory"}); \}             \(\backslash\)
  memset((head)->hh.tbl->buckets, 0,                                             \(\backslash\)
          \hyperlink{uthash_8h_a361cdc5e8d6d8fe5fae6912588ae15d0}{HASH\_INITIAL\_NUM\_BUCKETS}*\textcolor{keyword}{sizeof}(\textcolor{keyword}{struct} 
      \hyperlink{struct_u_t__hash__bucket}{UT\_hash\_bucket}));               \(\backslash\)
  HASH\_BLOOM\_MAKE((head)->hh.tbl);                                               \(\backslash\)
  (head)->hh.tbl->signature = \hyperlink{uthash_8h_a4a7a46b9b92a9c73e4f9321e8e6b6bb2}{HASH\_SIGNATURE};                                    \(\backslash\)
\} \textcolor{keywordflow}{while} (0)
\end{DoxyCode}


Definition at line 172 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a22c77754346c75bfafd872d2d49c6dc7}\label{uthash_8h_a22c77754346c75bfafd872d2d49c6dc7}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+O\+AT@{H\+A\+S\+H\+\_\+\+O\+AT}}
\index{H\+A\+S\+H\+\_\+\+O\+AT@{H\+A\+S\+H\+\_\+\+O\+AT}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+O\+AT}{HASH\_OAT}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+O\+AT(\begin{DoxyParamCaption}\item[{}]{key,  }\item[{}]{keylen,  }\item[{}]{hashv }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}
\textcolor{keywordflow}{do} \{                                                                             \(\backslash\)
  unsigned \_ho\_i;                                                                \(\backslash\)
  const \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} *\_ho\_key=(\textcolor{keyword}{const} \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char}*)(key);                      \(\backslash\)
  hashv = 0;                                                                     \(\backslash\)
  for(\_ho\_i=0; \_ho\_i < keylen; \_ho\_i++) \{                                        \(\backslash\)
      hashv += \_ho\_key[\_ho\_i];                                                   \(\backslash\)
      hashv += (hashv << 10);                                                    \(\backslash\)
      hashv ^= (hashv >> 6);                                                     \(\backslash\)
  \}                                                                              \(\backslash\)
  hashv += (hashv << 3);                                                         \(\backslash\)
  hashv ^= (hashv >> 11);                                                        \(\backslash\)
  hashv += (hashv << 15);                                                        \(\backslash\)
\} \textcolor{keywordflow}{while} (0)
\end{DoxyCode}


Definition at line 511 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_ab35e223d7385dfbe3c42758f502f4c04}\label{uthash_8h_ab35e223d7385dfbe3c42758f502f4c04}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+O\+V\+E\+R\+H\+E\+AD@{H\+A\+S\+H\+\_\+\+O\+V\+E\+R\+H\+E\+AD}}
\index{H\+A\+S\+H\+\_\+\+O\+V\+E\+R\+H\+E\+AD@{H\+A\+S\+H\+\_\+\+O\+V\+E\+R\+H\+E\+AD}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+O\+V\+E\+R\+H\+E\+AD}{HASH\_OVERHEAD}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+O\+V\+E\+R\+H\+E\+AD(\begin{DoxyParamCaption}\item[{}]{hh,  }\item[{}]{head }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}
((head != NULL) ? (                                                             \(\backslash\)
 (\textcolor{keywordtype}{size\_t})(((head)->hh.tbl->num\_items   * \textcolor{keyword}{sizeof}(\hyperlink{struct_u_t__hash__handle}{UT\_hash\_handle}))   +             \(\backslash\)
          ((head)->hh.tbl->num\_buckets * \textcolor{keyword}{sizeof}(\hyperlink{uthash_8h_a3ba3da0ca59a082c35a0d6b52e803ddf}{UT\_hash\_bucket}))   +             \(\backslash\)
           sizeof(\hyperlink{struct_u_t__hash__table}{UT\_hash\_table})                                   +             \(\backslash\)
           (\hyperlink{uthash_8h_a81f88a18c0837c77f40926074e7811db}{HASH\_BLOOM\_BYTELEN}))) : 0U)
\end{DoxyCode}


Definition at line 985 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a9897aa8b1ace582e7bbdef05f21cbc54}\label{uthash_8h_a9897aa8b1ace582e7bbdef05f21cbc54}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+CE@{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+CE}}
\index{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+CE@{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+CE}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+CE}{HASH\_REPLACE}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+CE(\begin{DoxyParamCaption}\item[{}]{hh,  }\item[{}]{head,  }\item[{}]{fieldname,  }\item[{}]{keylen\+\_\+in,  }\item[{}]{add,  }\item[{}]{replaced }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}
\textcolor{keywordflow}{do} \{                                                                             \(\backslash\)
  unsigned \_hr\_hashv;                                                            \(\backslash\)
  HASH\_VALUE(&((add)->fieldname), keylen\_in, \_hr\_hashv);                         \(\backslash\)
  HASH\_REPLACE\_BYHASHVALUE(hh, head, fieldname, keylen\_in, \_hr\_hashv, add, replaced); \(\backslash\)
\} \textcolor{keywordflow}{while} (0)
\end{DoxyCode}


Definition at line 211 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_ab7fc2175a455ed8e8351737b4f8b2842}\label{uthash_8h_ab7fc2175a455ed8e8351737b4f8b2842}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE@{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE}}
\index{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE@{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE}{HASH\_REPLACE\_BYHASHVALUE}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+UE(\begin{DoxyParamCaption}\item[{}]{hh,  }\item[{}]{head,  }\item[{}]{fieldname,  }\item[{}]{keylen\+\_\+in,  }\item[{}]{hashval,  }\item[{}]{add,  }\item[{}]{replaced }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}
\textcolor{keywordflow}{do} \{                                                                             \(\backslash\)
  (replaced) = NULL;                                                             \(\backslash\)
  HASH\_FIND\_BYHASHVALUE(hh, head, &((add)->fieldname), keylen\_in, hashval, replaced); \(\backslash\)
  if (replaced) \{                                                                \(\backslash\)
     HASH\_DELETE(hh, head, replaced);                                            \(\backslash\)
  \}                                                                              \(\backslash\)
  HASH\_ADD\_KEYPTR\_BYHASHVALUE(hh, head, &((add)->fieldname), keylen\_in, hashval, add); \(\backslash\)
\} \textcolor{keywordflow}{while} (0)
\end{DoxyCode}


Definition at line 201 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_aa0104b44f5a911bfda7fd9f939e1594f}\label{uthash_8h_aa0104b44f5a911bfda7fd9f939e1594f}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+U\+E\+\_\+\+I\+N\+O\+R\+D\+ER@{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+U\+E\+\_\+\+I\+N\+O\+R\+D\+ER}}
\index{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+U\+E\+\_\+\+I\+N\+O\+R\+D\+ER@{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+U\+E\+\_\+\+I\+N\+O\+R\+D\+ER}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+U\+E\+\_\+\+I\+N\+O\+R\+D\+ER}{HASH\_REPLACE\_BYHASHVALUE\_INORDER}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+B\+Y\+H\+A\+S\+H\+V\+A\+L\+U\+E\+\_\+\+I\+N\+O\+R\+D\+ER(\begin{DoxyParamCaption}\item[{}]{hh,  }\item[{}]{head,  }\item[{}]{fieldname,  }\item[{}]{keylen\+\_\+in,  }\item[{}]{hashval,  }\item[{}]{add,  }\item[{}]{replaced,  }\item[{}]{cmpfcn }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}
\textcolor{keywordflow}{do} \{                                                                             \(\backslash\)
  (replaced) = NULL;                                                             \(\backslash\)
  HASH\_FIND\_BYHASHVALUE(hh, head, &((add)->fieldname), keylen\_in, hashval, replaced); \(\backslash\)
  if (replaced) \{                                                                \(\backslash\)
     HASH\_DELETE(hh, head, replaced);                                            \(\backslash\)
  \}                                                                              \(\backslash\)
  HASH\_ADD\_KEYPTR\_BYHASHVALUE\_INORDER(hh, head, &((add)->fieldname), keylen\_in, hashval, add, cmpfcn); \(\backslash\)
\} \textcolor{keywordflow}{while} (0)
\end{DoxyCode}


Definition at line 191 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_aa6d7a872d8855c9b8bf55d62e8eb0430}\label{uthash_8h_aa6d7a872d8855c9b8bf55d62e8eb0430}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+I\+N\+O\+R\+D\+ER@{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+I\+N\+O\+R\+D\+ER}}
\index{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+I\+N\+O\+R\+D\+ER@{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+I\+N\+O\+R\+D\+ER}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+I\+N\+O\+R\+D\+ER}{HASH\_REPLACE\_INORDER}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+I\+N\+O\+R\+D\+ER(\begin{DoxyParamCaption}\item[{}]{hh,  }\item[{}]{head,  }\item[{}]{fieldname,  }\item[{}]{keylen\+\_\+in,  }\item[{}]{add,  }\item[{}]{replaced,  }\item[{}]{cmpfcn }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}
\textcolor{keywordflow}{do} \{                                                                             \(\backslash\)
  unsigned \_hr\_hashv;                                                            \(\backslash\)
  HASH\_VALUE(&((add)->fieldname), keylen\_in, \_hr\_hashv);                         \(\backslash\)
  HASH\_REPLACE\_BYHASHVALUE\_INORDER(hh, head, fieldname, keylen\_in, \_hr\_hashv, add, replaced, cmpfcn); \(\backslash\)
\} \textcolor{keywordflow}{while} (0)
\end{DoxyCode}


Definition at line 218 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a43124846a2747f48f45bf9f16631a6da}\label{uthash_8h_a43124846a2747f48f45bf9f16631a6da}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+I\+NT@{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+I\+NT}}
\index{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+I\+NT@{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+I\+NT}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+I\+NT}{HASH\_REPLACE\_INT}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+I\+NT(\begin{DoxyParamCaption}\item[{}]{head,  }\item[{}]{intfield,  }\item[{}]{add,  }\item[{}]{replaced }\end{DoxyParamCaption})~\hyperlink{uthash_8h_a9897aa8b1ace582e7bbdef05f21cbc54}{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+CE}(hh,head,intfield,sizeof(int),add,replaced)}



Definition at line 384 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a13bcd1176a34c0a924fbf187c897bf68}\label{uthash_8h_a13bcd1176a34c0a924fbf187c897bf68}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+P\+TR@{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+P\+TR}}
\index{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+P\+TR@{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+P\+TR}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+P\+TR}{HASH\_REPLACE\_PTR}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+P\+TR(\begin{DoxyParamCaption}\item[{}]{head,  }\item[{}]{ptrfield,  }\item[{}]{add,  }\item[{}]{replaced }\end{DoxyParamCaption})~\hyperlink{uthash_8h_a9897aa8b1ace582e7bbdef05f21cbc54}{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+CE}(hh,head,ptrfield,sizeof(void $\ast$),add,replaced)}



Definition at line 390 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a069b31f4fbc11094d8d3d5e3b1a641db}\label{uthash_8h_a069b31f4fbc11094d8d3d5e3b1a641db}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+S\+TR@{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+S\+TR}}
\index{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+S\+TR@{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+S\+TR}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+S\+TR}{HASH\_REPLACE\_STR}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+C\+E\+\_\+\+S\+TR(\begin{DoxyParamCaption}\item[{}]{head,  }\item[{}]{strfield,  }\item[{}]{add,  }\item[{}]{replaced }\end{DoxyParamCaption})~\hyperlink{uthash_8h_a9897aa8b1ace582e7bbdef05f21cbc54}{H\+A\+S\+H\+\_\+\+R\+E\+P\+L\+A\+CE}(hh,head,strfield\mbox{[}0\mbox{]},(unsigned)\hyperlink{uthash_8h_aa14634cb1f894d48256362bae7239be6}{uthash\+\_\+strlen}(add-\/$>$strfield),add,replaced)}



Definition at line 378 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_ae8cf38dbd44a475eb0fa4cdb9988e13a}\label{uthash_8h_ae8cf38dbd44a475eb0fa4cdb9988e13a}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+S\+AX@{H\+A\+S\+H\+\_\+\+S\+AX}}
\index{H\+A\+S\+H\+\_\+\+S\+AX@{H\+A\+S\+H\+\_\+\+S\+AX}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+S\+AX}{HASH\_SAX}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+S\+AX(\begin{DoxyParamCaption}\item[{}]{key,  }\item[{}]{keylen,  }\item[{}]{hashv }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}
\textcolor{keywordflow}{do} \{                                                                             \(\backslash\)
  unsigned \_sx\_i;                                                                \(\backslash\)
  const \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} *\_hs\_key=(\textcolor{keyword}{const} \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char}*)(key);                      \(\backslash\)
  hashv = 0;                                                                     \(\backslash\)
  for(\_sx\_i=0; \_sx\_i < keylen; \_sx\_i++) \{                                        \(\backslash\)
      hashv ^= (hashv << 5) + (hashv >> 2) + \_hs\_key[\_sx\_i];                     \(\backslash\)
  \}                                                                              \(\backslash\)
\} \textcolor{keywordflow}{while} (0)
\end{DoxyCode}


Definition at line 490 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_ad190366f7a476ece79bd628240a5fc93}\label{uthash_8h_ad190366f7a476ece79bd628240a5fc93}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+S\+E\+L\+E\+CT@{H\+A\+S\+H\+\_\+\+S\+E\+L\+E\+CT}}
\index{H\+A\+S\+H\+\_\+\+S\+E\+L\+E\+CT@{H\+A\+S\+H\+\_\+\+S\+E\+L\+E\+CT}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+S\+E\+L\+E\+CT}{HASH\_SELECT}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+S\+E\+L\+E\+CT(\begin{DoxyParamCaption}\item[{}]{hh\+\_\+dst,  }\item[{}]{dst,  }\item[{}]{hh\+\_\+src,  }\item[{}]{src,  }\item[{}]{cond }\end{DoxyParamCaption})}



Definition at line 936 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a91480d6a21f082d49d20faeee0295cbb}\label{uthash_8h_a91480d6a21f082d49d20faeee0295cbb}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+S\+FH@{H\+A\+S\+H\+\_\+\+S\+FH}}
\index{H\+A\+S\+H\+\_\+\+S\+FH@{H\+A\+S\+H\+\_\+\+S\+FH}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+S\+FH}{HASH\_SFH}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+S\+FH(\begin{DoxyParamCaption}\item[{}]{key,  }\item[{}]{keylen,  }\item[{}]{hashv }\end{DoxyParamCaption})}



Definition at line 590 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a4a7a46b9b92a9c73e4f9321e8e6b6bb2}\label{uthash_8h_a4a7a46b9b92a9c73e4f9321e8e6b6bb2}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+S\+I\+G\+N\+A\+T\+U\+RE@{H\+A\+S\+H\+\_\+\+S\+I\+G\+N\+A\+T\+U\+RE}}
\index{H\+A\+S\+H\+\_\+\+S\+I\+G\+N\+A\+T\+U\+RE@{H\+A\+S\+H\+\_\+\+S\+I\+G\+N\+A\+T\+U\+RE}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+S\+I\+G\+N\+A\+T\+U\+RE}{HASH\_SIGNATURE}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+S\+I\+G\+N\+A\+T\+U\+RE~0xa0111fe1u}



Definition at line 1027 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a88d2ab40956878caacd02c214f7e8f15}\label{uthash_8h_a88d2ab40956878caacd02c214f7e8f15}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+S\+O\+RT@{H\+A\+S\+H\+\_\+\+S\+O\+RT}}
\index{H\+A\+S\+H\+\_\+\+S\+O\+RT@{H\+A\+S\+H\+\_\+\+S\+O\+RT}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+S\+O\+RT}{HASH\_SORT}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+S\+O\+RT(\begin{DoxyParamCaption}\item[{}]{head,  }\item[{}]{cmpfcn }\end{DoxyParamCaption})~\hyperlink{uthash_8h_a388b4071dcff005154f431d3d3025fbd}{H\+A\+S\+H\+\_\+\+S\+RT}(hh,head,cmpfcn)}



Definition at line 843 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a388b4071dcff005154f431d3d3025fbd}\label{uthash_8h_a388b4071dcff005154f431d3d3025fbd}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+S\+RT@{H\+A\+S\+H\+\_\+\+S\+RT}}
\index{H\+A\+S\+H\+\_\+\+S\+RT@{H\+A\+S\+H\+\_\+\+S\+RT}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+S\+RT}{HASH\_SRT}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+S\+RT(\begin{DoxyParamCaption}\item[{}]{hh,  }\item[{}]{head,  }\item[{}]{cmpfcn }\end{DoxyParamCaption})}



Definition at line 844 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a4d7691544128a6ef265f3e4fa5ed3113}\label{uthash_8h_a4d7691544128a6ef265f3e4fa5ed3113}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+T\+O\+\_\+\+B\+KT@{H\+A\+S\+H\+\_\+\+T\+O\+\_\+\+B\+KT}}
\index{H\+A\+S\+H\+\_\+\+T\+O\+\_\+\+B\+KT@{H\+A\+S\+H\+\_\+\+T\+O\+\_\+\+B\+KT}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+T\+O\+\_\+\+B\+KT}{HASH\_TO\_BKT}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+T\+O\+\_\+\+B\+KT(\begin{DoxyParamCaption}\item[{}]{hashv,  }\item[{}]{num\+\_\+bkts,  }\item[{}]{bkt }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}
\textcolor{keywordflow}{do} \{                                                                             \(\backslash\)
  bkt = ((hashv) & ((num\_bkts) - 1U));                                           \(\backslash\)
\} \textcolor{keywordflow}{while} (0)
\end{DoxyCode}


Definition at line 320 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a5bc1c6438f5d6fc56b8dcbf4bbe50271}\label{uthash_8h_a5bc1c6438f5d6fc56b8dcbf4bbe50271}} 
\index{uthash.\+h@{uthash.\+h}!H\+A\+S\+H\+\_\+\+V\+A\+L\+UE@{H\+A\+S\+H\+\_\+\+V\+A\+L\+UE}}
\index{H\+A\+S\+H\+\_\+\+V\+A\+L\+UE@{H\+A\+S\+H\+\_\+\+V\+A\+L\+UE}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+A\+S\+H\+\_\+\+V\+A\+L\+UE}{HASH\_VALUE}}
{\footnotesize\ttfamily \#define H\+A\+S\+H\+\_\+\+V\+A\+L\+UE(\begin{DoxyParamCaption}\item[{}]{keyptr,  }\item[{}]{keylen,  }\item[{}]{hashv }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}
\textcolor{keywordflow}{do} \{                                                                             \(\backslash\)
  HASH\_FCN(keyptr, keylen, hashv);                                               \(\backslash\)
\} \textcolor{keywordflow}{while} (0)
\end{DoxyCode}


Definition at line 114 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a46261e43585c404cccf8ab0f5c6d271e}\label{uthash_8h_a46261e43585c404cccf8ab0f5c6d271e}} 
\index{uthash.\+h@{uthash.\+h}!H\+H\+\_\+\+F\+R\+O\+M\+\_\+\+E\+L\+MT@{H\+H\+\_\+\+F\+R\+O\+M\+\_\+\+E\+L\+MT}}
\index{H\+H\+\_\+\+F\+R\+O\+M\+\_\+\+E\+L\+MT@{H\+H\+\_\+\+F\+R\+O\+M\+\_\+\+E\+L\+MT}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{H\+H\+\_\+\+F\+R\+O\+M\+\_\+\+E\+L\+MT}{HH\_FROM\_ELMT}}
{\footnotesize\ttfamily \#define H\+H\+\_\+\+F\+R\+O\+M\+\_\+\+E\+L\+MT(\begin{DoxyParamCaption}\item[{}]{tbl,  }\item[{}]{elp }\end{DoxyParamCaption})~((\hyperlink{struct_u_t__hash__handle}{U\+T\+\_\+hash\+\_\+handle} $\ast$)(((char$\ast$)(elp)) + ((tbl)-\/$>$hho)))}



Definition at line 112 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a86ea78714da520989a6f7a764b4d71b4}\label{uthash_8h_a86ea78714da520989a6f7a764b4d71b4}} 
\index{uthash.\+h@{uthash.\+h}!uthash\+\_\+expand\+\_\+fyi@{uthash\+\_\+expand\+\_\+fyi}}
\index{uthash\+\_\+expand\+\_\+fyi@{uthash\+\_\+expand\+\_\+fyi}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{uthash\+\_\+expand\+\_\+fyi}{uthash\_expand\_fyi}}
{\footnotesize\ttfamily \#define uthash\+\_\+expand\+\_\+fyi(\begin{DoxyParamCaption}\item[{}]{tbl }\end{DoxyParamCaption})~/$\ast$ can be defined to log expands   $\ast$/}



Definition at line 101 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a03b52301b0ed976b6981ef33613320c1}\label{uthash_8h_a03b52301b0ed976b6981ef33613320c1}} 
\index{uthash.\+h@{uthash.\+h}!uthash\+\_\+fatal@{uthash\+\_\+fatal}}
\index{uthash\+\_\+fatal@{uthash\+\_\+fatal}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{uthash\+\_\+fatal}{uthash\_fatal}}
{\footnotesize\ttfamily \#define uthash\+\_\+fatal(\begin{DoxyParamCaption}\item[{}]{msg }\end{DoxyParamCaption})~exit(-\/1)        /$\ast$ fatal error (out of memory,etc) $\ast$/}



Definition at line 82 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a56cdf8c254fc700332c8e6a7263b4657}\label{uthash_8h_a56cdf8c254fc700332c8e6a7263b4657}} 
\index{uthash.\+h@{uthash.\+h}!uthash\+\_\+free@{uthash\+\_\+free}}
\index{uthash\+\_\+free@{uthash\+\_\+free}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{uthash\+\_\+free}{uthash\_free}}
{\footnotesize\ttfamily \#define uthash\+\_\+free(\begin{DoxyParamCaption}\item[{}]{ptr,  }\item[{}]{sz }\end{DoxyParamCaption})~free(ptr)     /$\ast$ free fcn                        $\ast$/}



Definition at line 88 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a861013aff36c0448f1888a2b0b5836d8}\label{uthash_8h_a861013aff36c0448f1888a2b0b5836d8}} 
\index{uthash.\+h@{uthash.\+h}!uthash\+\_\+malloc@{uthash\+\_\+malloc}}
\index{uthash\+\_\+malloc@{uthash\+\_\+malloc}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{uthash\+\_\+malloc}{uthash\_malloc}}
{\footnotesize\ttfamily \#define uthash\+\_\+malloc(\begin{DoxyParamCaption}\item[{}]{sz }\end{DoxyParamCaption})~malloc(sz)      /$\ast$ malloc fcn                      $\ast$/}



Definition at line 85 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a8ca9a884b81d487034b57f87d2f97fa4}\label{uthash_8h_a8ca9a884b81d487034b57f87d2f97fa4}} 
\index{uthash.\+h@{uthash.\+h}!uthash\+\_\+memcmp@{uthash\+\_\+memcmp}}
\index{uthash\+\_\+memcmp@{uthash\+\_\+memcmp}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{uthash\+\_\+memcmp}{uthash\_memcmp}}
{\footnotesize\ttfamily \#define uthash\+\_\+memcmp(\begin{DoxyParamCaption}\item[{}]{a,  }\item[{}]{b,  }\item[{}]{n }\end{DoxyParamCaption})~memcmp(a,b,n)}



Definition at line 94 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a7cc237d8f87de3836b5390856cfc5c86}\label{uthash_8h_a7cc237d8f87de3836b5390856cfc5c86}} 
\index{uthash.\+h@{uthash.\+h}!uthash\+\_\+noexpand\+\_\+fyi@{uthash\+\_\+noexpand\+\_\+fyi}}
\index{uthash\+\_\+noexpand\+\_\+fyi@{uthash\+\_\+noexpand\+\_\+fyi}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{uthash\+\_\+noexpand\+\_\+fyi}{uthash\_noexpand\_fyi}}
{\footnotesize\ttfamily \#define uthash\+\_\+noexpand\+\_\+fyi(\begin{DoxyParamCaption}\item[{}]{tbl }\end{DoxyParamCaption})~/$\ast$ can be defined to log noexpand  $\ast$/}



Definition at line 98 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_aa14634cb1f894d48256362bae7239be6}\label{uthash_8h_aa14634cb1f894d48256362bae7239be6}} 
\index{uthash.\+h@{uthash.\+h}!uthash\+\_\+strlen@{uthash\+\_\+strlen}}
\index{uthash\+\_\+strlen@{uthash\+\_\+strlen}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{uthash\+\_\+strlen}{uthash\_strlen}}
{\footnotesize\ttfamily \#define uthash\+\_\+strlen(\begin{DoxyParamCaption}\item[{}]{s }\end{DoxyParamCaption})~strlen(s)}



Definition at line 91 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_aa56cef9cb86dc1f4b5d27ee3a691077e}\label{uthash_8h_aa56cef9cb86dc1f4b5d27ee3a691077e}} 
\index{uthash.\+h@{uthash.\+h}!U\+T\+H\+A\+S\+H\+\_\+\+V\+E\+R\+S\+I\+ON@{U\+T\+H\+A\+S\+H\+\_\+\+V\+E\+R\+S\+I\+ON}}
\index{U\+T\+H\+A\+S\+H\+\_\+\+V\+E\+R\+S\+I\+ON@{U\+T\+H\+A\+S\+H\+\_\+\+V\+E\+R\+S\+I\+ON}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{U\+T\+H\+A\+S\+H\+\_\+\+V\+E\+R\+S\+I\+ON}{UTHASH\_VERSION}}
{\footnotesize\ttfamily \#define U\+T\+H\+A\+S\+H\+\_\+\+V\+E\+R\+S\+I\+ON~2.\+0.\+1}



Definition at line 27 of file uthash.\+h.



\subsection{Typedef Documentation}
\mbox{\Hypertarget{uthash_8h_a435d1572bf3f880d55459d9805097f62}\label{uthash_8h_a435d1572bf3f880d55459d9805097f62}} 
\index{uthash.\+h@{uthash.\+h}!uint32\+\_\+t@{uint32\+\_\+t}}
\index{uint32\+\_\+t@{uint32\+\_\+t}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{uint32\+\_\+t}{uint32\_t}}
{\footnotesize\ttfamily typedef unsigned int \hyperlink{uthash_8h_a435d1572bf3f880d55459d9805097f62}{uint32\+\_\+t}}



Definition at line 77 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_aba7bc1797add20fe3efdf37ced1182c5}\label{uthash_8h_aba7bc1797add20fe3efdf37ced1182c5}} 
\index{uthash.\+h@{uthash.\+h}!uint8\+\_\+t@{uint8\+\_\+t}}
\index{uint8\+\_\+t@{uint8\+\_\+t}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{uint8\+\_\+t}{uint8\_t}}
{\footnotesize\ttfamily typedef unsigned char \hyperlink{uthash_8h_aba7bc1797add20fe3efdf37ced1182c5}{uint8\+\_\+t}}



Definition at line 78 of file uthash.\+h.

\mbox{\Hypertarget{uthash_8h_a3ba3da0ca59a082c35a0d6b52e803ddf}\label{uthash_8h_a3ba3da0ca59a082c35a0d6b52e803ddf}} 
\index{uthash.\+h@{uthash.\+h}!U\+T\+\_\+hash\+\_\+bucket@{U\+T\+\_\+hash\+\_\+bucket}}
\index{U\+T\+\_\+hash\+\_\+bucket@{U\+T\+\_\+hash\+\_\+bucket}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{U\+T\+\_\+hash\+\_\+bucket}{UT\_hash\_bucket}}
{\footnotesize\ttfamily typedef struct \hyperlink{struct_u_t__hash__bucket}{U\+T\+\_\+hash\+\_\+bucket}  \hyperlink{struct_u_t__hash__bucket}{U\+T\+\_\+hash\+\_\+bucket}}

\mbox{\Hypertarget{uthash_8h_a0e3a99ed9f776349720d0c362f956fb6}\label{uthash_8h_a0e3a99ed9f776349720d0c362f956fb6}} 
\index{uthash.\+h@{uthash.\+h}!U\+T\+\_\+hash\+\_\+handle@{U\+T\+\_\+hash\+\_\+handle}}
\index{U\+T\+\_\+hash\+\_\+handle@{U\+T\+\_\+hash\+\_\+handle}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{U\+T\+\_\+hash\+\_\+handle}{UT\_hash\_handle}}
{\footnotesize\ttfamily typedef struct \hyperlink{struct_u_t__hash__handle}{U\+T\+\_\+hash\+\_\+handle}  \hyperlink{struct_u_t__hash__handle}{U\+T\+\_\+hash\+\_\+handle}}

\mbox{\Hypertarget{uthash_8h_a0758074b9942c2ad076610b3e0ce548e}\label{uthash_8h_a0758074b9942c2ad076610b3e0ce548e}} 
\index{uthash.\+h@{uthash.\+h}!U\+T\+\_\+hash\+\_\+table@{U\+T\+\_\+hash\+\_\+table}}
\index{U\+T\+\_\+hash\+\_\+table@{U\+T\+\_\+hash\+\_\+table}!uthash.\+h@{uthash.\+h}}
\subsubsection{\texorpdfstring{U\+T\+\_\+hash\+\_\+table}{UT\_hash\_table}}
{\footnotesize\ttfamily typedef struct \hyperlink{struct_u_t__hash__table}{U\+T\+\_\+hash\+\_\+table}  \hyperlink{struct_u_t__hash__table}{U\+T\+\_\+hash\+\_\+table}}

