\doxysection{src/label.c File Reference}
\label{label_8c}\index{src/label.c@{src/label.c}}
{\ttfamily \#include \char`\"{}assemble.\+h\char`\"{}}\newline
Include dependency graph for label.\+c\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{label_8c__incl}
\end{center}
\end{figure}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item
\textbf{ HKEY} $\ast$ \textbf{ label\+\_\+hashkey} (const char $\ast$value)
\item
unsigned \textbf{ labelhash} (const char $\ast$prog, const char $\ast$label)
\item
int \textbf{ compare\+\_\+adr} (const void $\ast$a, const void $\ast$b)
\item
void \textbf{ addcerrlist\+\_\+label} ()
\begin{DoxyCompactList}\small\item\em ラベルのエラーをエラーリストに追加する \end{DoxyCompactList}\item
\textbf{ WORD} \textbf{ getlabel} (const char $\ast$prog, const char $\ast$label)
\begin{DoxyCompactList}\small\item\em プログラム名とラベルに対応するアドレスをラベル表から検索する \end{DoxyCompactList}\item
bool \textbf{ addlabel} (const char $\ast$prog, const char $\ast$label, \textbf{ WORD} adr)
\begin{DoxyCompactList}\small\item\em プログラム名、ラベル、アドレスをラベル表に追加する \end{DoxyCompactList}\item
void \textbf{ printlabel} ()
\begin{DoxyCompactList}\small\item\em ラベル表を表示する \end{DoxyCompactList}\item
void \textbf{ freelabel} ()
\begin{DoxyCompactList}\small\item\em ラベル表を解放する \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Variables}
\begin{DoxyCompactItemize}
\item
static int \textbf{ labelcnt} = 0
\begin{DoxyCompactList}\small\item\em ラベル数 \end{DoxyCompactList}\item
static \textbf{ LABELTAB} $\ast$ \textbf{ labels} [\textbf{ LABELTABSIZE}]
\begin{DoxyCompactList}\small\item\em ラベル表 \end{DoxyCompactList}\item
static \textbf{ CERR} \textbf{ cerr\+\_\+label} [$\,$]
\begin{DoxyCompactList}\small\item\em ラベルのエラー \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection{Function Documentation}
\mbox{\label{label_8c_a10a81977ba4af7876ecbed2ca0167b5b}}
\index{label.c@{label.c}!addcerrlist\_label@{addcerrlist\_label}}
\index{addcerrlist\_label@{addcerrlist\_label}!label.c@{label.c}}
\doxysubsubsection{addcerrlist\_label()}
{\footnotesize\ttfamily void addcerrlist\+\_\+label (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
ラベルのエラーをエラーリストに追加する
\begin{DoxyReturn}{Returns}
なし
\end{DoxyReturn}
Definition at line 84 of file label.\+c.
Here is the call graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=335pt]{label_8c_a10a81977ba4af7876ecbed2ca0167b5b_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{label_8c_a10a81977ba4af7876ecbed2ca0167b5b_icgraph}
\end{center}
\end{figure}
\mbox{\label{label_8c_a13845f111eda3f65e76716c9aca802aa}}
\index{label.c@{label.c}!addlabel@{addlabel}}
\index{addlabel@{addlabel}!label.c@{label.c}}
\doxysubsubsection{addlabel()}
{\footnotesize\ttfamily bool addlabel (\begin{DoxyParamCaption}\item[{const char $\ast$}]{prog, }\item[{const char $\ast$}]{label, }\item[{\textbf{ WORD}}]{adr }\end{DoxyParamCaption})}
プログラム名、ラベル、アドレスをラベル表に追加する
\begin{DoxyReturn}{Returns}
追加に成功した時はtrue、失敗した時はfalse
\end{DoxyReturn}
\begin{DoxyParams}{Parameters}
{\em $\ast$prog} & プログラム名 \\
\hline
{\em $\ast$label} & ラベル \\
\hline
{\em adr} & アドレス \\
\hline
\end{DoxyParams}
Definition at line 106 of file label.\+c.
Here is the call graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{label_8c_a13845f111eda3f65e76716c9aca802aa_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{label_8c_a13845f111eda3f65e76716c9aca802aa_icgraph}
\end{center}
\end{figure}
\mbox{\label{label_8c_a9ec12e2cb3c7b304302e3de896bf5974}}
\index{label.c@{label.c}!compare\_adr@{compare\_adr}}
\index{compare\_adr@{compare\_adr}!label.c@{label.c}}
\doxysubsubsection{compare\_adr()}
{\footnotesize\ttfamily int compare\+\_\+adr (\begin{DoxyParamCaption}\item[{const void $\ast$}]{a, }\item[{const void $\ast$}]{b }\end{DoxyParamCaption})}
ラベルを比較した結果を返す。qsort内で使われる関数
\begin{DoxyReturn}{Returns}
ラベルが同一の場合は0、異なる場合は0以外
\end{DoxyReturn}
\begin{DoxyParams}{Parameters}
{\em $\ast$a} & ラベルa \\
\hline
{\em $\ast$b} & ラベルb \\
\hline
\end{DoxyParams}
Definition at line 78 of file label.\+c.
Here is the caller graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{label_8c_a9ec12e2cb3c7b304302e3de896bf5974_icgraph}
\end{center}
\end{figure}
\mbox{\label{label_8c_aee91ab081a311d3a398a846e5014102a}}
\index{label.c@{label.c}!freelabel@{freelabel}}
\index{freelabel@{freelabel}!label.c@{label.c}}
\doxysubsubsection{freelabel()}
{\footnotesize\ttfamily void freelabel (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
ラベル表を解放する
\begin{DoxyReturn}{Returns}
なし
\end{DoxyReturn}
Definition at line 158 of file label.\+c.
Here is the caller graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{label_8c_aee91ab081a311d3a398a846e5014102a_icgraph}
\end{center}
\end{figure}
\mbox{\label{label_8c_a8b2ae1a0bae14a00c2ca265c79d021cc}}
\index{label.c@{label.c}!getlabel@{getlabel}}
\index{getlabel@{getlabel}!label.c@{label.c}}
\doxysubsubsection{getlabel()}
{\footnotesize\ttfamily \textbf{ WORD} getlabel (\begin{DoxyParamCaption}\item[{const char $\ast$}]{prog, }\item[{const char $\ast$}]{label }\end{DoxyParamCaption})}
プログラム名とラベルに対応するアドレスをラベル表から検索する
\begin{DoxyReturn}{Returns}
プログラム名とラベルに対応するアドレス
\end{DoxyReturn}
\begin{DoxyParams}{Parameters}
{\em $\ast$prog} & プログラム名 \\
\hline
{\em $\ast$label} & ラベル \\
\hline
\end{DoxyParams}
Definition at line 89 of file label.\+c.
Here is the call graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{label_8c_a8b2ae1a0bae14a00c2ca265c79d021cc_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{label_8c_a8b2ae1a0bae14a00c2ca265c79d021cc_icgraph}
\end{center}
\end{figure}
\mbox{\label{label_8c_ade45b3e884a2b22030607032387e4639}}
\index{label.c@{label.c}!label\_hashkey@{label\_hashkey}}
\index{label\_hashkey@{label\_hashkey}!label.c@{label.c}}
\doxysubsubsection{label\_hashkey()}
{\footnotesize\ttfamily \textbf{ HKEY} $\ast$ label\+\_\+hashkey (\begin{DoxyParamCaption}\item[{const char $\ast$}]{value }\end{DoxyParamCaption})}
ラベルのハッシュ値をセットしたキーを返す
\begin{DoxyReturn}{Returns}
ハッシュ値をセットしたキー
\end{DoxyReturn}
\begin{DoxyParams}{Parameters}
{\em value} & 値 \\
\hline
\end{DoxyParams}
Definition at line 51 of file label.\+c.
Here is the call graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=330pt]{label_8c_ade45b3e884a2b22030607032387e4639_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{label_8c_ade45b3e884a2b22030607032387e4639_icgraph}
\end{center}
\end{figure}
\mbox{\label{label_8c_a2bd360502c6df9497ba69f40ac1e8464}}
\index{label.c@{label.c}!labelhash@{labelhash}}
\index{labelhash@{labelhash}!label.c@{label.c}}
\doxysubsubsection{labelhash()}
{\footnotesize\ttfamily unsigned labelhash (\begin{DoxyParamCaption}\item[{const char $\ast$}]{prog, }\item[{const char $\ast$}]{label }\end{DoxyParamCaption})}
プログラム名とラベルに対応するハッシュ値を返す
\begin{DoxyReturn}{Returns}
ハッシュ値
\end{DoxyReturn}
\begin{DoxyParams}{Parameters}
{\em prog} & プログラム名 \\
\hline
{\em label} & ラベル \\
\hline
\end{DoxyParams}
Definition at line 60 of file label.\+c.
Here is the call graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{label_8c_a2bd360502c6df9497ba69f40ac1e8464_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{label_8c_a2bd360502c6df9497ba69f40ac1e8464_icgraph}
\end{center}
\end{figure}
\mbox{\label{label_8c_a3195492a17ee089ac687975cf79bde8b}}
\index{label.c@{label.c}!printlabel@{printlabel}}
\index{printlabel@{printlabel}!label.c@{label.c}}
\doxysubsubsection{printlabel()}
{\footnotesize\ttfamily void printlabel (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
ラベル表を表示する
\begin{DoxyReturn}{Returns}
なし
\end{DoxyReturn}
Definition at line 135 of file label.\+c.
Here is the call graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=212pt]{label_8c_a3195492a17ee089ac687975cf79bde8b_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{label_8c_a3195492a17ee089ac687975cf79bde8b_icgraph}
\end{center}
\end{figure}
\doxysubsection{Variable Documentation}
\mbox{\label{label_8c_ab6bbe980aeb63e08ca325fe89c227a90}}
\index{label.c@{label.c}!cerr\_label@{cerr\_label}}
\index{cerr\_label@{cerr\_label}!label.c@{label.c}}
\doxysubsubsection{cerr\_label}
{\footnotesize\ttfamily \textbf{ CERR} cerr\+\_\+label[$\,$]\hspace{0.3cm}{\ttfamily [static]}}
{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{= \{}
\DoxyCodeLine{ \{ 101, \textcolor{stringliteral}{"{}label already defined"{}} \},}
\DoxyCodeLine{ \{ 102, \textcolor{stringliteral}{"{}label table is full"{}} \},}
\DoxyCodeLine{ \{ 103, \textcolor{stringliteral}{"{}label not found"{}} \},}
\DoxyCodeLine{\}}
\end{DoxyCode}
ラベルのエラー
Definition at line 45 of file label.\+c.
\mbox{\label{label_8c_ae11cf2cd781761ab7ef9ceb8ca00562b}}
\index{label.c@{label.c}!labelcnt@{labelcnt}}
\index{labelcnt@{labelcnt}!label.c@{label.c}}
\doxysubsubsection{labelcnt}
{\footnotesize\ttfamily int labelcnt = 0\hspace{0.3cm}{\ttfamily [static]}}
ラベル数
Definition at line 35 of file label.\+c.
\mbox{\label{label_8c_a7718ce950ae6fa6da47f16c117fa88e9}}
\index{label.c@{label.c}!labels@{labels}}
\index{labels@{labels}!label.c@{label.c}}
\doxysubsubsection{labels}
{\footnotesize\ttfamily \textbf{ LABELTAB}$\ast$ labels[\textbf{ LABELTABSIZE}]\hspace{0.3cm}{\ttfamily [static]}}
ラベル表
Definition at line 40 of file label.\+c.