\hypertarget{dollar_8c}{}\doxysection{dollar.\+c File Reference}
\label{dollar_8c}\index{dollar.c@{dollar.c}}
{\ttfamily \#include \char`\"{}form3.\+h\char`\"{}}\newline
\doxysubsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \mbox{\hyperlink{dollar_8c_ad6138f70b4a60e8b031ce44d728a898d}{S\+T\+E\+P2}}
\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{dollar_8c_aa6c61722b6726ea933fb3067c57e8cca}\label{dollar_8c_aa6c61722b6726ea933fb3067c57e8cca}} 
int {\bfseries Catch\+Dollar} (int par)
\item 
\mbox{\Hypertarget{dollar_8c_a459eea1059c330b8ad84f354850ef20f}\label{dollar_8c_a459eea1059c330b8ad84f354850ef20f}} 
int {\bfseries Assign\+Dollar} (P\+H\+E\+AD W\+O\+RD $\ast$term, W\+O\+RD level)
\item 
\mbox{\Hypertarget{dollar_8c_aa84196c99639c70793b72227e4653868}\label{dollar_8c_aa84196c99639c70793b72227e4653868}} 
U\+B\+Y\+TE $\ast$ {\bfseries Write\+Dollar\+To\+Buffer} (W\+O\+RD numdollar, W\+O\+RD par)
\item 
\mbox{\Hypertarget{dollar_8c_aa5db28f38063c191aaebf6dad51ce263}\label{dollar_8c_aa5db28f38063c191aaebf6dad51ce263}} 
U\+B\+Y\+TE $\ast$ {\bfseries Write\+Dollar\+Factor\+To\+Buffer} (W\+O\+RD numdollar, W\+O\+RD numfac, W\+O\+RD par)
\item 
\mbox{\Hypertarget{dollar_8c_a825e503cdf21fbfa64112f3d77c75e8d}\label{dollar_8c_a825e503cdf21fbfa64112f3d77c75e8d}} 
void {\bfseries Add\+To\+Dollar\+Buffer} (U\+B\+Y\+TE $\ast$s)
\item 
\mbox{\Hypertarget{dollar_8c_aaabf5af3ba8f5569c18659b9a3141fe0}\label{dollar_8c_aaabf5af3ba8f5569c18659b9a3141fe0}} 
void {\bfseries Term\+Assign} (W\+O\+RD $\ast$term)
\item 
\mbox{\Hypertarget{dollar_8c_a21502e62f02db8811234c6aa26e2a207}\label{dollar_8c_a21502e62f02db8811234c6aa26e2a207}} 
int {\bfseries Put\+Term\+In\+Dollar} (W\+O\+RD $\ast$term, W\+O\+RD numdollar)
\item 
\mbox{\Hypertarget{dollar_8c_ac942df9a01a95d6e1c77c77dea493a16}\label{dollar_8c_ac942df9a01a95d6e1c77c77dea493a16}} 
void {\bfseries Wild\+Dollars} (P\+H\+E\+AD W\+O\+RD $\ast$term)
\item 
\mbox{\Hypertarget{dollar_8c_ae52bfe901198e6cc91dc1b9921d9fea8}\label{dollar_8c_ae52bfe901198e6cc91dc1b9921d9fea8}} 
W\+O\+RD {\bfseries Dol\+To\+Tensor} (P\+H\+E\+AD W\+O\+RD numdollar)
\item 
\mbox{\Hypertarget{dollar_8c_ae7e6484d214f1c253adf4cd335fa0f58}\label{dollar_8c_ae7e6484d214f1c253adf4cd335fa0f58}} 
W\+O\+RD {\bfseries Dol\+To\+Function} (P\+H\+E\+AD W\+O\+RD numdollar)
\item 
\mbox{\Hypertarget{dollar_8c_a4238e743814175fcfa3eefbdd0d7f1de}\label{dollar_8c_a4238e743814175fcfa3eefbdd0d7f1de}} 
W\+O\+RD {\bfseries Dol\+To\+Vector} (P\+H\+E\+AD W\+O\+RD numdollar)
\item 
\mbox{\Hypertarget{dollar_8c_a9724db4d7fd4fc245ee9ce3f832a7c26}\label{dollar_8c_a9724db4d7fd4fc245ee9ce3f832a7c26}} 
W\+O\+RD {\bfseries Dol\+To\+Number} (P\+H\+E\+AD W\+O\+RD numdollar)
\item 
\mbox{\Hypertarget{dollar_8c_a1b3b5432b1ac74ed5fc39b0de7d19083}\label{dollar_8c_a1b3b5432b1ac74ed5fc39b0de7d19083}} 
W\+O\+RD {\bfseries Dol\+To\+Symbol} (P\+H\+E\+AD W\+O\+RD numdollar)
\item 
\mbox{\Hypertarget{dollar_8c_a94f6aff0481bdd255e188f046cb9a008}\label{dollar_8c_a94f6aff0481bdd255e188f046cb9a008}} 
W\+O\+RD {\bfseries Dol\+To\+Index} (P\+H\+E\+AD W\+O\+RD numdollar)
\item 
\mbox{\Hypertarget{dollar_8c_a7b842efa3089db8f87cf88617ce801df}\label{dollar_8c_a7b842efa3089db8f87cf88617ce801df}} 
\mbox{\hyperlink{structDoLlArS}{D\+O\+L\+L\+A\+RS}} {\bfseries Dol\+To\+Terms} (P\+H\+E\+AD W\+O\+RD numdollar)
\item 
\mbox{\Hypertarget{dollar_8c_ac6359a80e66a421afb9c62bdbd5bbc3a}\label{dollar_8c_ac6359a80e66a421afb9c62bdbd5bbc3a}} 
L\+O\+NG {\bfseries Dol\+To\+Long} (P\+H\+E\+AD W\+O\+RD numdollar)
\item 
\mbox{\Hypertarget{dollar_8c_abaa7d42f2b5043bcc2fb9dd3d0cea2cd}\label{dollar_8c_abaa7d42f2b5043bcc2fb9dd3d0cea2cd}} 
int {\bfseries Exec\+Inside} (U\+B\+Y\+TE $\ast$s)
\item 
\mbox{\Hypertarget{dollar_8c_a202574450a219278ec7ae4040a56afe1}\label{dollar_8c_a202574450a219278ec7ae4040a56afe1}} 
int {\bfseries Inside\+Dollar} (P\+H\+E\+AD W\+O\+RD $\ast$ll, W\+O\+RD level)
\item 
\mbox{\Hypertarget{dollar_8c_a110665da094ece71b9364d4e904534fa}\label{dollar_8c_a110665da094ece71b9364d4e904534fa}} 
void {\bfseries Exchange\+Dollars} (int num1, int num2)
\item 
\mbox{\Hypertarget{dollar_8c_a0d6147d4091cb28208268e298739a629}\label{dollar_8c_a0d6147d4091cb28208268e298739a629}} 
L\+O\+NG {\bfseries Terms\+In\+Dollar} (W\+O\+RD num)
\item 
\mbox{\Hypertarget{dollar_8c_a13ac30c180a1facc0c0d5b8985b083b6}\label{dollar_8c_a13ac30c180a1facc0c0d5b8985b083b6}} 
L\+O\+NG {\bfseries Size\+Of\+Dollar} (W\+O\+RD num)
\item 
\mbox{\Hypertarget{dollar_8c_a1635554779b7bab7b29389e687152454}\label{dollar_8c_a1635554779b7bab7b29389e687152454}} 
U\+B\+Y\+TE $\ast$ {\bfseries Pre\+If\+Dollar\+Eval} (U\+B\+Y\+TE $\ast$s, int $\ast$value)
\item 
\mbox{\Hypertarget{dollar_8c_a3d352d3bf2a39de3d27132d29a5c5152}\label{dollar_8c_a3d352d3bf2a39de3d27132d29a5c5152}} 
W\+O\+RD $\ast$ {\bfseries Translate\+Expression} (U\+B\+Y\+TE $\ast$s)
\item 
\mbox{\Hypertarget{dollar_8c_afe7132c45fca7a1465cfcd6c4c3d396c}\label{dollar_8c_afe7132c45fca7a1465cfcd6c4c3d396c}} 
int {\bfseries Is\+Set\+Member} (W\+O\+RD $\ast$buffer, W\+O\+RD numset)
\item 
\mbox{\Hypertarget{dollar_8c_acfb65f96b27f3bd8071c6745e7c09921}\label{dollar_8c_acfb65f96b27f3bd8071c6745e7c09921}} 
int {\bfseries Is\+Multiple\+Of} (W\+O\+RD $\ast$buf1, W\+O\+RD $\ast$buf2)
\item 
\mbox{\Hypertarget{dollar_8c_ae82580091233cc709f4df64fb906e479}\label{dollar_8c_ae82580091233cc709f4df64fb906e479}} 
int {\bfseries Two\+Expr\+Compare} (W\+O\+RD $\ast$buf1, W\+O\+RD $\ast$buf2, int oprtr)
\item 
\mbox{\Hypertarget{dollar_8c_a4b2c20bda8c76afa223bf1ab1169025d}\label{dollar_8c_a4b2c20bda8c76afa223bf1ab1169025d}} 
int {\bfseries Dollar\+Raise\+Low} (U\+B\+Y\+TE $\ast$name, L\+O\+NG value)
\item 
W\+O\+RD \mbox{\hyperlink{dollar_8c_a8fbe807fad1ecd07d17b898b52f8f83a}{Eval\+Do\+Loop\+Arg}} (P\+H\+E\+AD W\+O\+RD $\ast$arg, W\+O\+RD par)
\item 
\mbox{\Hypertarget{dollar_8c_a29b174404deac7397846d7164dd8eb65}\label{dollar_8c_a29b174404deac7397846d7164dd8eb65}} 
W\+O\+RD {\bfseries Test\+Do\+Loop} (P\+H\+E\+AD W\+O\+RD $\ast$lhsbuf, W\+O\+RD level)
\item 
\mbox{\Hypertarget{dollar_8c_a99f41e1300ea6bc62a8f4b98e4ea7fde}\label{dollar_8c_a99f41e1300ea6bc62a8f4b98e4ea7fde}} 
W\+O\+RD {\bfseries Test\+End\+Do\+Loop} (P\+H\+E\+AD W\+O\+RD $\ast$lhsbuf, W\+O\+RD level)
\item 
\mbox{\Hypertarget{dollar_8c_a67402865992705f1f224efb5bb98621e}\label{dollar_8c_a67402865992705f1f224efb5bb98621e}} 
int {\bfseries Dollar\+Factorize} (P\+H\+E\+AD W\+O\+RD numdollar)
\item 
\mbox{\Hypertarget{dollar_8c_af94f2b39c711b31a9a295eda1c882358}\label{dollar_8c_af94f2b39c711b31a9a295eda1c882358}} 
void {\bfseries Clean\+Dollar\+Factors} (\mbox{\hyperlink{structDoLlArS}{D\+O\+L\+L\+A\+RS}} d)
\item 
\mbox{\Hypertarget{dollar_8c_a6afe12ec6db7ad6721ec8ce506c49f2a}\label{dollar_8c_a6afe12ec6db7ad6721ec8ce506c49f2a}} 
W\+O\+RD $\ast$ {\bfseries Take\+Dollar\+Content} (P\+H\+E\+AD W\+O\+RD $\ast$dollarbuffer, W\+O\+RD $\ast$$\ast$factor)
\item 
W\+O\+RD $\ast$ \mbox{\hyperlink{dollar_8c_a3bd0af7dfa31be5f82ec32b88b7dbd9e}{Make\+Dollar\+Integer}} (P\+H\+E\+AD W\+O\+RD $\ast$bufin, W\+O\+RD $\ast$$\ast$bufout)
\item 
W\+O\+RD $\ast$ \mbox{\hyperlink{dollar_8c_a07e98bf5fcb815cd50f76cbe2e3b5871}{Make\+Dollar\+Mod}} (P\+H\+E\+AD W\+O\+RD $\ast$buffer, W\+O\+RD $\ast$$\ast$bufout)
\item 
\mbox{\Hypertarget{dollar_8c_a59d59f188714da008acf81efdaf2f61a}\label{dollar_8c_a59d59f188714da008acf81efdaf2f61a}} 
int {\bfseries Get\+Dol\+Num} (P\+H\+E\+AD W\+O\+RD $\ast$t, W\+O\+RD $\ast$tstop)
\item 
void \mbox{\hyperlink{dollar_8c_a83a7021f5782fb70dbf9a72c75a2a95f}{Add\+Pot\+Moddollar}} (W\+O\+RD numdollar)
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
The routines that deal with the dollar variables. The name administration is to be found in the file \mbox{\hyperlink{names_8c}{names.\+c}} 

\doxysubsection{Macro Definition Documentation}
\mbox{\Hypertarget{dollar_8c_ad6138f70b4a60e8b031ce44d728a898d}\label{dollar_8c_ad6138f70b4a60e8b031ce44d728a898d}} 
\index{dollar.c@{dollar.c}!STEP2@{STEP2}}
\index{STEP2@{STEP2}!dollar.c@{dollar.c}}
\doxysubsubsection{\texorpdfstring{STEP2}{STEP2}}
{\footnotesize\ttfamily \#define S\+T\+E\+P2}

Factors a dollar expression. Notation\+: d-\/$>$nfactors becomes nonzero. if the number of factors is one, we leave d-\/$>$factors zero. Otherwise factors is an array of pointers to the factors. These are pointers of the type F\+A\+C\+D\+O\+L\+L\+AR. fd-\/$>$where pointer to contents in term notation fd-\/$>$size size of the buffer fd-\/$>$where points to fd-\/$>$type D\+O\+L\+N\+U\+M\+B\+ER or D\+O\+L\+T\+E\+R\+MS fd-\/$>$value value if type is D\+O\+L\+N\+U\+M\+B\+ER and it fits in a W\+O\+RD. 

Definition at line 2948 of file dollar.\+c.



\doxysubsection{Function Documentation}
\mbox{\Hypertarget{dollar_8c_a8fbe807fad1ecd07d17b898b52f8f83a}\label{dollar_8c_a8fbe807fad1ecd07d17b898b52f8f83a}} 
\index{dollar.c@{dollar.c}!EvalDoLoopArg@{EvalDoLoopArg}}
\index{EvalDoLoopArg@{EvalDoLoopArg}!dollar.c@{dollar.c}}
\doxysubsubsection{\texorpdfstring{EvalDoLoopArg()}{EvalDoLoopArg()}}
{\footnotesize\ttfamily W\+O\+RD Eval\+Do\+Loop\+Arg (\begin{DoxyParamCaption}\item[{P\+H\+E\+AD W\+O\+RD $\ast$}]{arg,  }\item[{W\+O\+RD}]{par }\end{DoxyParamCaption})}

Evaluates one argument of a do loop. Such an argument is constructed from S\+N\+U\+M\+B\+E\+Rs D\+O\+L\+L\+A\+R\+E\+X\+P\+R\+E\+S\+S\+I\+O\+Ns and possibly D\+O\+L\+L\+A\+R\+E\+X\+P\+R2s which indicate factors of the preceeding dollar. Hence we have S\+N\+U\+M\+B\+ER,num D\+O\+L\+L\+A\+R\+E\+X\+P\+R\+E\+S\+S\+I\+ON,numdollar D\+O\+L\+L\+A\+R\+E\+X\+P\+R\+E\+S\+S\+I\+ON,numdollar,D\+O\+L\+L\+A\+R\+E\+X\+P\+R2,numfactor D\+O\+L\+L\+A\+R\+E\+X\+P\+R\+E\+S\+S\+I\+ON,numdollar,D\+O\+L\+L\+A\+R\+E\+X\+P\+R2,numfactor,D\+O\+L\+L\+A\+R\+E\+X\+P\+R2,numfactor etc. Because we have a do-\/loop at every stage we should have a number. The notation in D\+O\+L\+L\+A\+R\+E\+X\+P\+R2 is that $>$= 0 is number of yet another dollar and $<$ 0 is -\/n-\/1 with n the array element or zero. The return value is the (short) number. The routine works its way through the list in a recursive manner. 

Definition at line 2646 of file dollar.\+c.

\mbox{\Hypertarget{dollar_8c_a3bd0af7dfa31be5f82ec32b88b7dbd9e}\label{dollar_8c_a3bd0af7dfa31be5f82ec32b88b7dbd9e}} 
\index{dollar.c@{dollar.c}!MakeDollarInteger@{MakeDollarInteger}}
\index{MakeDollarInteger@{MakeDollarInteger}!dollar.c@{dollar.c}}
\doxysubsubsection{\texorpdfstring{MakeDollarInteger()}{MakeDollarInteger()}}
{\footnotesize\ttfamily W\+O\+RD$\ast$ Make\+Dollar\+Integer (\begin{DoxyParamCaption}\item[{P\+H\+E\+AD W\+O\+RD $\ast$}]{bufin,  }\item[{W\+O\+RD $\ast$$\ast$}]{bufout }\end{DoxyParamCaption})}

For normalizing everything to integers we have to determine for all elements of this argument the L\+CM of the denominators and the G\+CD of the numerators. The input argument is in bufin. The number that comes out is the return value. The normalized argument is in bufout. 

Definition at line 3622 of file dollar.\+c.

\mbox{\Hypertarget{dollar_8c_a07e98bf5fcb815cd50f76cbe2e3b5871}\label{dollar_8c_a07e98bf5fcb815cd50f76cbe2e3b5871}} 
\index{dollar.c@{dollar.c}!MakeDollarMod@{MakeDollarMod}}
\index{MakeDollarMod@{MakeDollarMod}!dollar.c@{dollar.c}}
\doxysubsubsection{\texorpdfstring{MakeDollarMod()}{MakeDollarMod()}}
{\footnotesize\ttfamily W\+O\+RD$\ast$ Make\+Dollar\+Mod (\begin{DoxyParamCaption}\item[{P\+H\+E\+AD W\+O\+RD $\ast$}]{buffer,  }\item[{W\+O\+RD $\ast$$\ast$}]{bufout }\end{DoxyParamCaption})}

Similar to Make\+Dollar\+Integer but now with modulus arithmetic using only a one W\+O\+RD \textquotesingle{}prime\textquotesingle{}. We make the coefficient of the first term in the argument equal to one. Already the coefficients are taken modulus A\+N.\+cmod and A\+N.\+ncmod == 1 

Definition at line 3796 of file dollar.\+c.

\mbox{\Hypertarget{dollar_8c_a83a7021f5782fb70dbf9a72c75a2a95f}\label{dollar_8c_a83a7021f5782fb70dbf9a72c75a2a95f}} 
\index{dollar.c@{dollar.c}!AddPotModdollar@{AddPotModdollar}}
\index{AddPotModdollar@{AddPotModdollar}!dollar.c@{dollar.c}}
\doxysubsubsection{\texorpdfstring{AddPotModdollar()}{AddPotModdollar()}}
{\footnotesize\ttfamily void Add\+Pot\+Moddollar (\begin{DoxyParamCaption}\item[{W\+O\+RD}]{numdollar }\end{DoxyParamCaption})}

Adds a \$-\/variable specified by {\itshape numdollar} to the list of potentially modified \$-\/variables unless it has already been included in the list.


\begin{DoxyParams}{Parameters}
{\em numdollar} & The index of the \$-\/variable to be added. \\
\hline
\end{DoxyParams}


Definition at line 3954 of file dollar.\+c.

