\section{KJS::Hash\-Table Struct Reference}
\label{structKJS_1_1HashTable}\index{KJS::HashTable@{KJS::HashTable}}
A hash table Usually the hashtable is generated by the create\_\-hash\_\-table script, from a .table file.  


{\tt \#include $<$lookup.h$>$}

Collaboration diagram for KJS::Hash\-Table:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=86pt]{structKJS_1_1HashTable__coll__graph}
\end{center}
\end{figure}
\subsection*{Public Attributes}
\begin{CompactItemize}
\item 
int {\bf type}
\begin{CompactList}\small\item\em type is a version number. \item\end{CompactList}\item 
int {\bf size}
\begin{CompactList}\small\item\em size is the total number of entries in the hashtable, including the null entries, i.e. \item\end{CompactList}\item 
const  {\bf Hash\-Entry} $\ast$ {\bf entries}
\begin{CompactList}\small\item\em pointer to the array of entries Mind that some entries in the array are null (0,0,0,0). \item\end{CompactList}\item 
int {\bf hash\-Size}
\begin{CompactList}\small\item\em the maximum value for the hash. \item\end{CompactList}\end{CompactItemize}


\subsection{Detailed Description}
A hash table Usually the hashtable is generated by the create\_\-hash\_\-table script, from a .table file. 

The implementation uses an array of entries, \char`\"{}size\char`\"{} is the total size of that array. The entries between 0 and hash\-Size-1 are the entry points for each hash value, and the entries between hash\-Size and size-1 are the overflow entries for the hash values that need one. The \char`\"{}next\char`\"{} pointer of the entry links entry points to overflow entries, and links overflow entries between them. 



Definition at line 72 of file lookup.h.

\subsection{Member Data Documentation}
\index{KJS::HashTable@{KJS::Hash\-Table}!type@{type}}
\index{type@{type}!KJS::HashTable@{KJS::Hash\-Table}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int {\bf KJS::Hash\-Table::type}}\label{structKJS_1_1HashTable_o0}


type is a version number. 

Currently always 2 

Definition at line 76 of file lookup.h.\index{KJS::HashTable@{KJS::Hash\-Table}!size@{size}}
\index{size@{size}!KJS::HashTable@{KJS::Hash\-Table}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int {\bf KJS::Hash\-Table::size}}\label{structKJS_1_1HashTable_o1}


size is the total number of entries in the hashtable, including the null entries, i.e. 

the size of the \char`\"{}entries\char`\"{} array. Used to iterate over all entries in the table 

Definition at line 82 of file lookup.h.\index{KJS::HashTable@{KJS::Hash\-Table}!entries@{entries}}
\index{entries@{entries}!KJS::HashTable@{KJS::Hash\-Table}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const {\bf Hash\-Entry}$\ast$ {\bf KJS::Hash\-Table::entries}}\label{structKJS_1_1HashTable_o2}


pointer to the array of entries Mind that some entries in the array are null (0,0,0,0). 



Definition at line 87 of file lookup.h.\index{KJS::HashTable@{KJS::Hash\-Table}!hashSize@{hashSize}}
\index{hashSize@{hashSize}!KJS::HashTable@{KJS::Hash\-Table}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int {\bf KJS::Hash\-Table::hash\-Size}}\label{structKJS_1_1HashTable_o3}


the maximum value for the hash. 

Always smaller than size. 

Definition at line 91 of file lookup.h.

The documentation for this struct was generated from the following file:\begin{CompactItemize}
\item 
lookup.h\end{CompactItemize}
