\doxysection{workspace/post-\/scarcity/src/ops/equal.h File Reference}
\hypertarget{equal_8h}{}\label{equal_8h}\index{workspace/post-\/scarcity/src/ops/equal.h@{workspace/post-\/scarcity/src/ops/equal.h}}
{\ttfamily \#include $<$math.\+h$>$}\newline
{\ttfamily \#include $<$stdbool.\+h$>$}\newline
{\ttfamily \#include "{}consspaceobject.\+h"{}}\newline
Include dependency graph for equal.\+h\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{equal_8h__incl}
\end{center}
\end{figure}
This graph shows which files directly or indirectly include this file\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{equal_8h__dep__incl}
\end{center}
\end{figure}
\doxysubsubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
bool \mbox{\hyperlink{equal_8h_ae8c9b7a5b6a556dbb30ae27d4c776d32}{eq}} (struct \mbox{\hyperlink{consspaceobject_8h_structcons__pointer}{cons\+\_\+pointer}} a, struct \mbox{\hyperlink{consspaceobject_8h_structcons__pointer}{cons\+\_\+pointer}} b)
\begin{DoxyCompactList}\small\item\em \doxylink{equal_8h}{equal.\+h} \end{DoxyCompactList}\item 
bool \mbox{\hyperlink{equal_8h_a8b86c32fe89b8039c060b6bf9f455870}{equal}} (struct \mbox{\hyperlink{consspaceobject_8h_structcons__pointer}{cons\+\_\+pointer}} a, struct \mbox{\hyperlink{consspaceobject_8h_structcons__pointer}{cons\+\_\+pointer}} b)
\begin{DoxyCompactList}\small\item\em Deep, and thus expensive, equality\+: true if these two objects have identical structure, else false. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Function Documentation}
\Hypertarget{equal_8h_ae8c9b7a5b6a556dbb30ae27d4c776d32}\label{equal_8h_ae8c9b7a5b6a556dbb30ae27d4c776d32} 
\index{equal.h@{equal.h}!eq@{eq}}
\index{eq@{eq}!equal.h@{equal.h}}
\doxysubsubsection{\texorpdfstring{eq()}{eq()}}
{\footnotesize\ttfamily bool eq (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{consspaceobject_8h_structcons__pointer}{cons\+\_\+pointer}}}]{a,  }\item[{struct \mbox{\hyperlink{consspaceobject_8h_structcons__pointer}{cons\+\_\+pointer}}}]{b }\end{DoxyParamCaption})}



\doxylink{equal_8h}{equal.\+h} 

Checks for shallow and deep equality

(c) 2017 Simon Brooke \href{mailto:simon@journeyman.cc}{\texttt{ simon@journeyman.\+cc}} Licensed under GPL version 2.\+0, or, at your option, any later version. Shallow, and thus cheap, equality\+: true if these two objects are the same object, else false.

\doxylink{equal_8h}{equal.\+h} 

Definition at line \mbox{\hyperlink{equal_8c_source_l00024}{24}} of file \mbox{\hyperlink{equal_8c_source}{equal.\+c}}.



References \mbox{\hyperlink{consspaceobject_8h_source_l00419}{cons\+\_\+pointer\+::offset}}, and \mbox{\hyperlink{consspaceobject_8h_source_l00417}{cons\+\_\+pointer\+::page}}.



Referenced by \mbox{\hyperlink{equal_8c_source_l00247}{equal()}}, \mbox{\hyperlink{equal_8c_source_l00195}{equal\+\_\+number\+\_\+number()}}, \mbox{\hyperlink{peano_8c_source_l00314}{lisp\+\_\+add()}}, \mbox{\hyperlink{lispops_8c_source_l00870}{lisp\+\_\+eq()}}, \mbox{\hyperlink{lispops_8c_source_l01263}{lisp\+\_\+repl()}}, \mbox{\hyperlink{ratio_8c_source_l00312}{make\+\_\+ratio()}}, and \mbox{\hyperlink{integer_8c_source_l00163}{release\+\_\+integer()}}.

\Hypertarget{equal_8h_a8b86c32fe89b8039c060b6bf9f455870}\label{equal_8h_a8b86c32fe89b8039c060b6bf9f455870} 
\index{equal.h@{equal.h}!equal@{equal}}
\index{equal@{equal}!equal.h@{equal.h}}
\doxysubsubsection{\texorpdfstring{equal()}{equal()}}
{\footnotesize\ttfamily bool equal (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{consspaceobject_8h_structcons__pointer}{cons\+\_\+pointer}}}]{a,  }\item[{struct \mbox{\hyperlink{consspaceobject_8h_structcons__pointer}{cons\+\_\+pointer}}}]{b }\end{DoxyParamCaption})}



Deep, and thus expensive, equality\+: true if these two objects have identical structure, else false. 



Definition at line \mbox{\hyperlink{equal_8c_source_l00247}{247}} of file \mbox{\hyperlink{equal_8c_source}{equal.\+c}}.



References \mbox{\hyperlink{consspaceobject_8h_source_l00046}{CONSTV}}, \mbox{\hyperlink{debug_8h_source_l00028}{DEBUG\+\_\+\+ARITH}}, \mbox{\hyperlink{debug_8c_source_l00041}{debug\+\_\+print()}}, \mbox{\hyperlink{debug_8c_source_l00119}{debug\+\_\+print\+\_\+object()}}, \mbox{\hyperlink{debug_8c_source_l00101}{debug\+\_\+printf()}}, \mbox{\hyperlink{equal_8c_source_l00047}{end\+\_\+of\+\_\+string()}}, \mbox{\hyperlink{equal_8c_source_l00024}{eq()}}, \mbox{\hyperlink{equal_8c_source_l00247}{equal()}}, \mbox{\hyperlink{equal_8c_source_l00195}{equal\+\_\+number\+\_\+number()}}, \mbox{\hyperlink{ratio_8c_source_l00357}{equal\+\_\+ratio\+\_\+ratio()}}, \mbox{\hyperlink{consspaceobject_8h_source_l00090}{INTEGERTV}}, \mbox{\hyperlink{consspaceobject_8h_source_l00100}{KEYTV}}, \mbox{\hyperlink{consspaceobject_8h_source_l00111}{LAMBDATV}}, \mbox{\hyperlink{consspaceobject_8h_source_l00168}{NLAMBDATV}}, \mbox{\hyperlink{consspaceobject_8h_source_l00374}{numberp}}, \mbox{\hyperlink{consspaceobject_8h_a259b3afe36776f8ba8498fdf95904f25}{cons\+\_\+space\+\_\+object\+::payload}}, \mbox{\hyperlink{consspaceobject_8h_source_l00297}{pointer2cell}}, \mbox{\hyperlink{consspaceobject_8h_source_l00179}{RATIOTV}}, \mbox{\hyperlink{consspaceobject_8h_source_l00199}{REALTV}}, \mbox{\hyperlink{equal_8c_source_l00035}{same\+\_\+type()}}, \mbox{\hyperlink{consspaceobject_8h_source_l00221}{STRINGTV}}, \mbox{\hyperlink{consspaceobject_8h_source_l00231}{SYMBOLTV}}, \mbox{\hyperlink{consspaceobject_8h_a21cb645ce4ae20308447dcd59534bf38}{cons\+\_\+space\+\_\+object\+::tag}}, and \mbox{\hyperlink{peano_8c_source_l00124}{to\+\_\+long\+\_\+double()}}.



Referenced by \mbox{\hyperlink{intern_8c_source_l00327}{c\+\_\+assoc()}}, \mbox{\hyperlink{equal_8c_source_l00247}{equal()}}, \mbox{\hyperlink{intern_8c_source_l00281}{internedp()}}, and \mbox{\hyperlink{lispops_8c_source_l00887}{lisp\+\_\+equal()}}.

