\hypertarget{structtree}{}\doxysection{tree Struct Reference}
\label{structtree}\index{tree@{tree}}


{\ttfamily \#include $<$structs.\+h$>$}

\doxysubsection*{Data Fields}
\begin{DoxyCompactItemize}
\item 
int \mbox{\hyperlink{structtree_a8c542ae193076c718cd63bc3b5721515}{parent}}
\item 
int \mbox{\hyperlink{structtree_a5b1e6fec9d68007dc2d9d7c165b47074}{left}}
\item 
int \mbox{\hyperlink{structtree_a1fbb1ee733bfd3b975b57159d8120f82}{right}}
\item 
int \mbox{\hyperlink{structtree_a018ae6bc00da4b35baf1beeb30400c42}{value}}
\item 
int \mbox{\hyperlink{structtree_a3a757c02980d4e6bd6a34c4c7b62559d}{blnce}}
\item 
int \mbox{\hyperlink{structtree_aa007d065fc3077178ec76a67b9687ae6}{usage}}
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
The subexpressions in the compiler are kept track of in a (balanced) tree to reduce the need for subexpressions and hence save much space in large rhs expressions (like when we have xxxxxxx occurrences of objects like f(x+1,x+1) in which each x+1 becomes a subexpression. The struct that controls this tree is C\+O\+M\+P\+T\+R\+EE. 

Definition at line 293 of file structs.\+h.



\doxysubsection{Field Documentation}
\mbox{\Hypertarget{structtree_a8c542ae193076c718cd63bc3b5721515}\label{structtree_a8c542ae193076c718cd63bc3b5721515}} 
\index{tree@{tree}!parent@{parent}}
\index{parent@{parent}!tree@{tree}}
\doxysubsubsection{\texorpdfstring{parent}{parent}}
{\footnotesize\ttfamily int tree\+::parent}

Index of parent 

Definition at line 294 of file structs.\+h.

\mbox{\Hypertarget{structtree_a5b1e6fec9d68007dc2d9d7c165b47074}\label{structtree_a5b1e6fec9d68007dc2d9d7c165b47074}} 
\index{tree@{tree}!left@{left}}
\index{left@{left}!tree@{tree}}
\doxysubsubsection{\texorpdfstring{left}{left}}
{\footnotesize\ttfamily int tree\+::left}

Left child (if not -\/1) 

Definition at line 295 of file structs.\+h.

\mbox{\Hypertarget{structtree_a1fbb1ee733bfd3b975b57159d8120f82}\label{structtree_a1fbb1ee733bfd3b975b57159d8120f82}} 
\index{tree@{tree}!right@{right}}
\index{right@{right}!tree@{tree}}
\doxysubsubsection{\texorpdfstring{right}{right}}
{\footnotesize\ttfamily int tree\+::right}

Right child (if not -\/1) 

Definition at line 296 of file structs.\+h.

\mbox{\Hypertarget{structtree_a018ae6bc00da4b35baf1beeb30400c42}\label{structtree_a018ae6bc00da4b35baf1beeb30400c42}} 
\index{tree@{tree}!value@{value}}
\index{value@{value}!tree@{tree}}
\doxysubsubsection{\texorpdfstring{value}{value}}
{\footnotesize\ttfamily int tree\+::value}

The object to be sorted and searched 

Definition at line 297 of file structs.\+h.

\mbox{\Hypertarget{structtree_a3a757c02980d4e6bd6a34c4c7b62559d}\label{structtree_a3a757c02980d4e6bd6a34c4c7b62559d}} 
\index{tree@{tree}!blnce@{blnce}}
\index{blnce@{blnce}!tree@{tree}}
\doxysubsubsection{\texorpdfstring{blnce}{blnce}}
{\footnotesize\ttfamily int tree\+::blnce}

Balance factor 

Definition at line 298 of file structs.\+h.

\mbox{\Hypertarget{structtree_aa007d065fc3077178ec76a67b9687ae6}\label{structtree_aa007d065fc3077178ec76a67b9687ae6}} 
\index{tree@{tree}!usage@{usage}}
\index{usage@{usage}!tree@{tree}}
\doxysubsubsection{\texorpdfstring{usage}{usage}}
{\footnotesize\ttfamily int tree\+::usage}

Number of uses in some types of trees 

Definition at line 299 of file structs.\+h.



The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{structs_8h}{structs.\+h}}\end{DoxyCompactItemize}
