\hypertarget{namespacedc__present}{}\section{dc\+\_\+present Module Reference}
\label{namespacedc__present}\index{dc\+\_\+present@{dc\+\_\+present}}
\subsection*{Data Types}
\begin{DoxyCompactItemize}
\item 
interface \hyperlink{interfacedc__present_1_1present__and__eq}{present\+\_\+and\+\_\+eq}
\item 
interface \hyperlink{interfacedc__present_1_1present__and__ne}{present\+\_\+and\+\_\+ne}
\item 
interface \hyperlink{interfacedc__present_1_1present__select}{present\+\_\+select}
\end{DoxyCompactItemize}
\subsection*{Functions/\+Subroutines}
\begin{DoxyCompactItemize}
\item 
logical function, public \hyperlink{namespacedc__present_ab280582985ee69fda00e2a0bf09194af}{present\+\_\+and\+\_\+true} (arg)
\item 
logical function, public \hyperlink{namespacedc__present_a0eac5ec50371728c0edced0be3115187}{present\+\_\+and\+\_\+false} (arg)
\item 
logical function, public \hyperlink{namespacedc__present_ad9ec27d75a905e2744228c6376bde5a5}{present\+\_\+and\+\_\+zero} (arg)
\item 
logical function, public \hyperlink{namespacedc__present_a6c700caf6363ee448488485a5a179ee3}{present\+\_\+and\+\_\+nonzero} (arg)
\item 
logical function \hyperlink{namespacedc__present_a2f6dabb68a6421da6844ff268309c559}{present\+\_\+and\+\_\+eq\+\_\+integer} (arg, val)
\item 
logical function \hyperlink{namespacedc__present_a9365fe84e8cbc7713621a131f3391582}{present\+\_\+and\+\_\+eq\+\_\+real} (arg, val)
\item 
logical function \hyperlink{namespacedc__present_aa274d004003201c2c0928f41a847328f}{present\+\_\+and\+\_\+eq\+\_\+double} (arg, val)
\item 
logical function \hyperlink{namespacedc__present_a1d770a5d50dfde1854bf6bfd33cf40e8}{present\+\_\+and\+\_\+ne\+\_\+integer} (arg, val)
\item 
logical function \hyperlink{namespacedc__present_a1a59093d812dd78f610ac07b0e962c90}{present\+\_\+and\+\_\+ne\+\_\+real} (arg, val)
\item 
logical function \hyperlink{namespacedc__present_a7828b6bec8e231b707c24587def6984f}{present\+\_\+and\+\_\+ne\+\_\+double} (arg, val)
\item 
logical function, public \hyperlink{namespacedc__present_aae281a56bc41e9546908a72aeb042430}{present\+\_\+and\+\_\+not\+\_\+empty} (arg)
\item 
character(string) function \hyperlink{namespacedc__present_aa89e79d46bd5c522150f6a5be5fd45e3}{present\+\_\+select\+\_\+char} (invalid, default, c0, c1, c2, c3, c4, c5, c6, c7, c8, c9)
\item 
integer function \hyperlink{namespacedc__present_a42115ed856452953e9b497a32ddac4e0}{present\+\_\+select\+\_\+int} (invalid, default, d0, d1, d2, d3, d4, d5, d6, d7, d8, d9)
\item 
real function \hyperlink{namespacedc__present_a518658802b964ffc26cdfcdc080c4c9e}{present\+\_\+select\+\_\+real} (invalid, default, r0, r1, r2, r3, r4, r5, r6, r7, r8, r9)
\item 
real(dp) function \hyperlink{namespacedc__present_a5b6f19c2b314ffc46d895c9664a56c28}{present\+\_\+select\+\_\+double} (invalid, default, f0, f1, f2, f3, f4, f5, f6, f7, f8, f9)
\item 
character(string) function \hyperlink{namespacedc__present_af996800524db28e41b3cb2dd0c7dd776}{present\+\_\+select\+\_\+char\+\_\+auto} (invalid, default, c0, c1, c2, c3, c4, c5, c6, c7, c8, c9)
\item 
integer function \hyperlink{namespacedc__present_a3192e2ceae053254a5d9002519ed98b5}{present\+\_\+select\+\_\+int\+\_\+auto} (invalid, default, d0, d1, d2, d3, d4, d5, d6, d7, d8, d9)
\item 
real function \hyperlink{namespacedc__present_a9ca8a8c464dbcd604ac9325fe475e2de}{present\+\_\+select\+\_\+real\+\_\+auto} (invalid, default, r0, r1, r2, r3, r4, r5, r6, r7, r8, r9)
\item 
real(dp) function \hyperlink{namespacedc__present_a2e6e9ed5cb06f60dcc999a4186164738}{present\+\_\+select\+\_\+double\+\_\+auto} (invalid, default, f0, f1, f2, f3, f4, f5, f6, f7, f8, f9)
\end{DoxyCompactItemize}


\subsection{Function/\+Subroutine Documentation}
\mbox{\Hypertarget{namespacedc__present_aa274d004003201c2c0928f41a847328f}\label{namespacedc__present_aa274d004003201c2c0928f41a847328f}} 
\index{dc\+\_\+present@{dc\+\_\+present}!present\+\_\+and\+\_\+eq\+\_\+double@{present\+\_\+and\+\_\+eq\+\_\+double}}
\index{present\+\_\+and\+\_\+eq\+\_\+double@{present\+\_\+and\+\_\+eq\+\_\+double}!dc\+\_\+present@{dc\+\_\+present}}
\subsubsection{\texorpdfstring{present\+\_\+and\+\_\+eq\+\_\+double()}{present\_and\_eq\_double()}}
{\footnotesize\ttfamily logical function dc\+\_\+present\+::present\+\_\+and\+\_\+eq\+\_\+double (\begin{DoxyParamCaption}\item[{real(dp), intent(in), optional}]{arg,  }\item[{real(dp), intent(in)}]{val }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 196 of file dc\+\_\+present.\+f90.


\begin{DoxyCode}
196     \textcolor{comment}{!}
197     \textcolor{comment}{! arg が省略されておらず、且つ val と等しい場合、}
198     \textcolor{comment}{! <tt>.true.</tt> が返ります。}
199     \textcolor{comment}{!}
200     \textcolor{keywordtype}{logical} :: result
201     \textcolor{keywordtype}{real(DP)},\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: arg
202     \textcolor{keywordtype}{real(DP)},\textcolor{keywordtype}{intent(in)} :: val
203   \textcolor{keywordflow}{continue}
204     \textcolor{keywordflow}{if}(\textcolor{keyword}{present}(arg)) \textcolor{keywordflow}{then}
205       \textcolor{keywordflow}{if}(arg==val) \textcolor{keywordflow}{then}
206         result=.true.
207       \textcolor{keywordflow}{else}
208         result=.false.
209 \textcolor{keywordflow}{      endif}
210     \textcolor{keywordflow}{else}
211       result=.false.
212 \textcolor{keywordflow}{    endif}
\end{DoxyCode}
\mbox{\Hypertarget{namespacedc__present_a2f6dabb68a6421da6844ff268309c559}\label{namespacedc__present_a2f6dabb68a6421da6844ff268309c559}} 
\index{dc\+\_\+present@{dc\+\_\+present}!present\+\_\+and\+\_\+eq\+\_\+integer@{present\+\_\+and\+\_\+eq\+\_\+integer}}
\index{present\+\_\+and\+\_\+eq\+\_\+integer@{present\+\_\+and\+\_\+eq\+\_\+integer}!dc\+\_\+present@{dc\+\_\+present}}
\subsubsection{\texorpdfstring{present\+\_\+and\+\_\+eq\+\_\+integer()}{present\_and\_eq\_integer()}}
{\footnotesize\ttfamily logical function dc\+\_\+present\+::present\+\_\+and\+\_\+eq\+\_\+integer (\begin{DoxyParamCaption}\item[{integer, intent(in), optional}]{arg,  }\item[{integer, intent(in)}]{val }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 156 of file dc\+\_\+present.\+f90.


\begin{DoxyCode}
156     \textcolor{comment}{!}
157     \textcolor{comment}{! arg が省略されておらず、且つ val と等しい場合、}
158     \textcolor{comment}{! <tt>.true.</tt> が返ります。}
159     \textcolor{comment}{!}
160     \textcolor{keywordtype}{logical} :: result
161     \textcolor{keywordtype}{integer},\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: arg
162     \textcolor{keywordtype}{integer},\textcolor{keywordtype}{intent(in)} :: val
163   \textcolor{keywordflow}{continue}
164     \textcolor{keywordflow}{if}(\textcolor{keyword}{present}(arg)) \textcolor{keywordflow}{then}
165       \textcolor{keywordflow}{if}(arg==val) \textcolor{keywordflow}{then}
166         result=.true.
167       \textcolor{keywordflow}{else}
168         result=.false.
169 \textcolor{keywordflow}{      endif}
170     \textcolor{keywordflow}{else}
171       result=.false.
172 \textcolor{keywordflow}{    endif}
\end{DoxyCode}
\mbox{\Hypertarget{namespacedc__present_a9365fe84e8cbc7713621a131f3391582}\label{namespacedc__present_a9365fe84e8cbc7713621a131f3391582}} 
\index{dc\+\_\+present@{dc\+\_\+present}!present\+\_\+and\+\_\+eq\+\_\+real@{present\+\_\+and\+\_\+eq\+\_\+real}}
\index{present\+\_\+and\+\_\+eq\+\_\+real@{present\+\_\+and\+\_\+eq\+\_\+real}!dc\+\_\+present@{dc\+\_\+present}}
\subsubsection{\texorpdfstring{present\+\_\+and\+\_\+eq\+\_\+real()}{present\_and\_eq\_real()}}
{\footnotesize\ttfamily logical function dc\+\_\+present\+::present\+\_\+and\+\_\+eq\+\_\+real (\begin{DoxyParamCaption}\item[{real, intent(in), optional}]{arg,  }\item[{real, intent(in)}]{val }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 176 of file dc\+\_\+present.\+f90.


\begin{DoxyCode}
176     \textcolor{comment}{!}
177     \textcolor{comment}{! arg が省略されておらず、且つ val と等しい場合、}
178     \textcolor{comment}{! <tt>.true.</tt> が返ります。}
179     \textcolor{comment}{!}
180     \textcolor{keywordtype}{logical} :: result
181     \textcolor{keywordtype}{real},\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: arg
182     \textcolor{keywordtype}{real},\textcolor{keywordtype}{intent(in)} :: val
183   \textcolor{keywordflow}{continue}
184     \textcolor{keywordflow}{if}(\textcolor{keyword}{present}(arg)) \textcolor{keywordflow}{then}
185       \textcolor{keywordflow}{if}(arg==val) \textcolor{keywordflow}{then}
186         result=.true.
187       \textcolor{keywordflow}{else}
188         result=.false.
189 \textcolor{keywordflow}{      endif}
190     \textcolor{keywordflow}{else}
191       result=.false.
192 \textcolor{keywordflow}{    endif}
\end{DoxyCode}
\mbox{\Hypertarget{namespacedc__present_a0eac5ec50371728c0edced0be3115187}\label{namespacedc__present_a0eac5ec50371728c0edced0be3115187}} 
\index{dc\+\_\+present@{dc\+\_\+present}!present\+\_\+and\+\_\+false@{present\+\_\+and\+\_\+false}}
\index{present\+\_\+and\+\_\+false@{present\+\_\+and\+\_\+false}!dc\+\_\+present@{dc\+\_\+present}}
\subsubsection{\texorpdfstring{present\+\_\+and\+\_\+false()}{present\_and\_false()}}
{\footnotesize\ttfamily logical function, public dc\+\_\+present\+::present\+\_\+and\+\_\+false (\begin{DoxyParamCaption}\item[{logical, intent(in), optional}]{arg }\end{DoxyParamCaption})}



Definition at line 99 of file dc\+\_\+present.\+f90.



Referenced by gtvarcopyattrall(), historycopyvariable1(), historycreate1(), historycreate2(), historyputcharex(), historyputdoubleex(), historyputintex(), and historyputrealex().


\begin{DoxyCode}
99     \textcolor{comment}{!}
100     \textcolor{comment}{! arg が省略されておらず、且つ <tt>.false.</tt> の場合、}
101     \textcolor{comment}{! <tt>.true.</tt> が返ります。}
102     \textcolor{comment}{!}
103     \textcolor{keywordtype}{logical} :: result
104     \textcolor{keywordtype}{logical},\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: arg
105   \textcolor{keywordflow}{continue}
106     \textcolor{keywordflow}{if}(\textcolor{keyword}{present}(arg)) \textcolor{keywordflow}{then}
107       \textcolor{keywordflow}{if}(arg) \textcolor{keywordflow}{then}
108         result=.false.
109       \textcolor{keywordflow}{else}
110         result=.true.
111 \textcolor{keywordflow}{      endif}
112     \textcolor{keywordflow}{else}
113       result=.false.
114 \textcolor{keywordflow}{    endif}
\end{DoxyCode}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=550pt]{namespacedc__present_a0eac5ec50371728c0edced0be3115187_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespacedc__present_a7828b6bec8e231b707c24587def6984f}\label{namespacedc__present_a7828b6bec8e231b707c24587def6984f}} 
\index{dc\+\_\+present@{dc\+\_\+present}!present\+\_\+and\+\_\+ne\+\_\+double@{present\+\_\+and\+\_\+ne\+\_\+double}}
\index{present\+\_\+and\+\_\+ne\+\_\+double@{present\+\_\+and\+\_\+ne\+\_\+double}!dc\+\_\+present@{dc\+\_\+present}}
\subsubsection{\texorpdfstring{present\+\_\+and\+\_\+ne\+\_\+double()}{present\_and\_ne\_double()}}
{\footnotesize\ttfamily logical function dc\+\_\+present\+::present\+\_\+and\+\_\+ne\+\_\+double (\begin{DoxyParamCaption}\item[{real(dp), intent(in), optional}]{arg,  }\item[{real(dp), intent(in)}]{val }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 256 of file dc\+\_\+present.\+f90.


\begin{DoxyCode}
256     \textcolor{comment}{!}
257     \textcolor{comment}{! arg が省略されておらず、且つ val と等しくない場合、}
258     \textcolor{comment}{! <tt>.true.</tt> が返ります。}
259     \textcolor{comment}{!}
260     \textcolor{keywordtype}{logical} :: result
261     \textcolor{keywordtype}{real(DP)},\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: arg
262     \textcolor{keywordtype}{real(DP)},\textcolor{keywordtype}{intent(in)} :: val
263   \textcolor{keywordflow}{continue}
264     \textcolor{keywordflow}{if}(\textcolor{keyword}{present}(arg)) \textcolor{keywordflow}{then}
265       \textcolor{keywordflow}{if}(arg/=val) \textcolor{keywordflow}{then}
266         result=.true.
267       \textcolor{keywordflow}{else}
268         result=.false.
269 \textcolor{keywordflow}{      endif}
270     \textcolor{keywordflow}{else}
271       result=.false.
272 \textcolor{keywordflow}{    endif}
\end{DoxyCode}
\mbox{\Hypertarget{namespacedc__present_a1d770a5d50dfde1854bf6bfd33cf40e8}\label{namespacedc__present_a1d770a5d50dfde1854bf6bfd33cf40e8}} 
\index{dc\+\_\+present@{dc\+\_\+present}!present\+\_\+and\+\_\+ne\+\_\+integer@{present\+\_\+and\+\_\+ne\+\_\+integer}}
\index{present\+\_\+and\+\_\+ne\+\_\+integer@{present\+\_\+and\+\_\+ne\+\_\+integer}!dc\+\_\+present@{dc\+\_\+present}}
\subsubsection{\texorpdfstring{present\+\_\+and\+\_\+ne\+\_\+integer()}{present\_and\_ne\_integer()}}
{\footnotesize\ttfamily logical function dc\+\_\+present\+::present\+\_\+and\+\_\+ne\+\_\+integer (\begin{DoxyParamCaption}\item[{integer, intent(in), optional}]{arg,  }\item[{integer, intent(in)}]{val }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 216 of file dc\+\_\+present.\+f90.


\begin{DoxyCode}
216     \textcolor{comment}{!}
217     \textcolor{comment}{! arg が省略されておらず、且つ val と等しくない場合、}
218     \textcolor{comment}{! <tt>.true.</tt> が返ります。}
219     \textcolor{comment}{!}
220     \textcolor{keywordtype}{logical} :: result
221     \textcolor{keywordtype}{integer},\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: arg
222     \textcolor{keywordtype}{integer},\textcolor{keywordtype}{intent(in)} :: val
223   \textcolor{keywordflow}{continue}
224     \textcolor{keywordflow}{if}(\textcolor{keyword}{present}(arg)) \textcolor{keywordflow}{then}
225       \textcolor{keywordflow}{if}(arg/=val) \textcolor{keywordflow}{then}
226         result=.true.
227       \textcolor{keywordflow}{else}
228         result=.false.
229 \textcolor{keywordflow}{      endif}
230     \textcolor{keywordflow}{else}
231       result=.false.
232 \textcolor{keywordflow}{    endif}
\end{DoxyCode}
\mbox{\Hypertarget{namespacedc__present_a1a59093d812dd78f610ac07b0e962c90}\label{namespacedc__present_a1a59093d812dd78f610ac07b0e962c90}} 
\index{dc\+\_\+present@{dc\+\_\+present}!present\+\_\+and\+\_\+ne\+\_\+real@{present\+\_\+and\+\_\+ne\+\_\+real}}
\index{present\+\_\+and\+\_\+ne\+\_\+real@{present\+\_\+and\+\_\+ne\+\_\+real}!dc\+\_\+present@{dc\+\_\+present}}
\subsubsection{\texorpdfstring{present\+\_\+and\+\_\+ne\+\_\+real()}{present\_and\_ne\_real()}}
{\footnotesize\ttfamily logical function dc\+\_\+present\+::present\+\_\+and\+\_\+ne\+\_\+real (\begin{DoxyParamCaption}\item[{real, intent(in), optional}]{arg,  }\item[{real, intent(in)}]{val }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 236 of file dc\+\_\+present.\+f90.


\begin{DoxyCode}
236     \textcolor{comment}{!}
237     \textcolor{comment}{! arg が省略されておらず、且つ val と等しくない場合、}
238     \textcolor{comment}{! <tt>.true.</tt> が返ります。}
239     \textcolor{comment}{!}
240     \textcolor{keywordtype}{logical} :: result
241     \textcolor{keywordtype}{real},\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: arg
242     \textcolor{keywordtype}{real},\textcolor{keywordtype}{intent(in)} :: val
243   \textcolor{keywordflow}{continue}
244     \textcolor{keywordflow}{if}(\textcolor{keyword}{present}(arg)) \textcolor{keywordflow}{then}
245       \textcolor{keywordflow}{if}(arg/=val) \textcolor{keywordflow}{then}
246         result=.true.
247       \textcolor{keywordflow}{else}
248         result=.false.
249 \textcolor{keywordflow}{      endif}
250     \textcolor{keywordflow}{else}
251       result=.false.
252 \textcolor{keywordflow}{    endif}
\end{DoxyCode}
\mbox{\Hypertarget{namespacedc__present_a6c700caf6363ee448488485a5a179ee3}\label{namespacedc__present_a6c700caf6363ee448488485a5a179ee3}} 
\index{dc\+\_\+present@{dc\+\_\+present}!present\+\_\+and\+\_\+nonzero@{present\+\_\+and\+\_\+nonzero}}
\index{present\+\_\+and\+\_\+nonzero@{present\+\_\+and\+\_\+nonzero}!dc\+\_\+present@{dc\+\_\+present}}
\subsubsection{\texorpdfstring{present\+\_\+and\+\_\+nonzero()}{present\_and\_nonzero()}}
{\footnotesize\ttfamily logical function, public dc\+\_\+present\+::present\+\_\+and\+\_\+nonzero (\begin{DoxyParamCaption}\item[{integer, intent(in), optional}]{arg }\end{DoxyParamCaption})}



Definition at line 137 of file dc\+\_\+present.\+f90.


\begin{DoxyCode}
137     \textcolor{comment}{!}
138     \textcolor{comment}{! arg が省略されておらず、且つ 0 ではない場合、}
139     \textcolor{comment}{! <tt>.true.</tt> が返ります。}
140     \textcolor{comment}{!}
141     \textcolor{keywordtype}{logical} :: result
142     \textcolor{keywordtype}{integer},\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: arg
143   \textcolor{keywordflow}{continue}
144     \textcolor{keywordflow}{if}(\textcolor{keyword}{present}(arg)) \textcolor{keywordflow}{then}
145       \textcolor{keywordflow}{if}(arg==0) \textcolor{keywordflow}{then}
146         result=.false.
147       \textcolor{keywordflow}{else}
148         result=.true.
149 \textcolor{keywordflow}{      endif}
150     \textcolor{keywordflow}{else}
151       result=.false.
152 \textcolor{keywordflow}{    endif}
\end{DoxyCode}
\mbox{\Hypertarget{namespacedc__present_aae281a56bc41e9546908a72aeb042430}\label{namespacedc__present_aae281a56bc41e9546908a72aeb042430}} 
\index{dc\+\_\+present@{dc\+\_\+present}!present\+\_\+and\+\_\+not\+\_\+empty@{present\+\_\+and\+\_\+not\+\_\+empty}}
\index{present\+\_\+and\+\_\+not\+\_\+empty@{present\+\_\+and\+\_\+not\+\_\+empty}!dc\+\_\+present@{dc\+\_\+present}}
\subsubsection{\texorpdfstring{present\+\_\+and\+\_\+not\+\_\+empty()}{present\_and\_not\_empty()}}
{\footnotesize\ttfamily logical function, public dc\+\_\+present\+::present\+\_\+and\+\_\+not\+\_\+empty (\begin{DoxyParamCaption}\item[{character(len=$\ast$), intent(in), optional}]{arg }\end{DoxyParamCaption})}



Definition at line 276 of file dc\+\_\+present.\+f90.



Referenced by dc\+\_\+iounit\+::fileopen(), historyautocreate1(), historyautocreate2(), historyautocreate3(), historycreate1(), historycreate2(), historygetdouble0(), historygetdouble1(), historygetdouble2(), historygetdouble3(), historygetdouble4(), historygetdouble5(), historygetdouble6(), historygetdouble7(), historygetint0(), historygetint1(), historygetint2(), historygetint3(), historygetint4(), historygetint5(), historygetint6(), historygetint7(), historygetreal0(), historygetreal1(), historygetreal2(), historygetreal3(), historygetreal4(), historygetreal5(), historygetreal6(), historygetreal7(), historyputcharex(), historyputdoubleex(), historyputintex(), historyputrealex(), hstnmlinfoadd(), hstnmlinfoallnamevalid(), hstnmlinfoallvarinicheck(), hstnmlinfocreate(), hstnmlinfodelete(), hstnmlinfoinquire(), hstnmlinfooutputstep(), hstnmlinfooutputvalid(), hstnmlinfosetvalidname(), and lookup\+\_\+growable\+\_\+url().


\begin{DoxyCode}
276     \textcolor{comment}{!}
277     \textcolor{comment}{! arg が省略されておらず、且つ空文字ではない場合、}
278     \textcolor{comment}{! <tt>.true.</tt> が返ります。}
279     \textcolor{comment}{!}
280     \textcolor{keywordtype}{logical} :: result
281     \textcolor{keywordtype}{character(len=*)},\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: arg
282   \textcolor{keywordflow}{continue}
283     \textcolor{keywordflow}{if}(\textcolor{keyword}{present}(arg)) \textcolor{keywordflow}{then}
284       \textcolor{keywordflow}{if}(arg==\textcolor{stringliteral}{""}) \textcolor{keywordflow}{then}
285         result=.false.
286       \textcolor{keywordflow}{else}
287         result=.true.
288 \textcolor{keywordflow}{      endif}
289     \textcolor{keywordflow}{else}
290       result=.false.
291 \textcolor{keywordflow}{    endif}
\end{DoxyCode}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=550pt]{namespacedc__present_aae281a56bc41e9546908a72aeb042430_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{namespacedc__present_ab280582985ee69fda00e2a0bf09194af}\label{namespacedc__present_ab280582985ee69fda00e2a0bf09194af}} 
\index{dc\+\_\+present@{dc\+\_\+present}!present\+\_\+and\+\_\+true@{present\+\_\+and\+\_\+true}}
\index{present\+\_\+and\+\_\+true@{present\+\_\+and\+\_\+true}!dc\+\_\+present@{dc\+\_\+present}}
\subsubsection{\texorpdfstring{present\+\_\+and\+\_\+true()}{present\_and\_true()}}
{\footnotesize\ttfamily logical function, public dc\+\_\+present\+::present\+\_\+and\+\_\+true (\begin{DoxyParamCaption}\item[{logical, intent(in), optional}]{arg }\end{DoxyParamCaption})}



Definition at line 80 of file dc\+\_\+present.\+f90.



Referenced by dc\+\_\+args\+::dcargsget0(), dc\+\_\+args\+::dcargshelp0(), dc\+\_\+args\+::dcargsstrict0(), dcdatetimetocharcal(), gtvarcopyattrall(), gtvaropen(), gtvaropenbydimord(), historyaddvariable1(), historyautocreate1(), historyautocreate2(), historyautocreate3(), historyclose(), historycreate1(), historycreate2(), historycreate3(), historygetdouble0(), historygetdouble0pointer(), historygetdouble0pointertimed(), historygetdouble0pointertimei(), historygetdouble0pointertimer(), historygetdouble0timed(), historygetdouble0timei(), historygetdouble0timer(), historygetdouble1(), historygetdouble1pointer(), historygetdouble1pointertimed(), historygetdouble1pointertimei(), historygetdouble1pointertimer(), historygetdouble1timed(), historygetdouble1timei(), historygetdouble1timer(), historygetdouble2(), historygetdouble2pointer(), historygetdouble2pointertimed(), historygetdouble2pointertimei(), historygetdouble2pointertimer(), historygetdouble2timed(), historygetdouble2timei(), historygetdouble2timer(), historygetdouble3(), historygetdouble3pointer(), historygetdouble3pointertimed(), historygetdouble3pointertimei(), historygetdouble3pointertimer(), historygetdouble3timed(), historygetdouble3timei(), historygetdouble3timer(), historygetdouble4(), historygetdouble4pointer(), historygetdouble4pointertimed(), historygetdouble4pointertimei(), historygetdouble4pointertimer(), historygetdouble4timed(), historygetdouble4timei(), historygetdouble4timer(), historygetdouble5(), historygetdouble5pointer(), historygetdouble5pointertimed(), historygetdouble5pointertimei(), historygetdouble5pointertimer(), historygetdouble5timed(), historygetdouble5timei(), historygetdouble5timer(), historygetdouble6(), historygetdouble6pointer(), historygetdouble6pointertimed(), historygetdouble6pointertimei(), historygetdouble6pointertimer(), historygetdouble6timed(), historygetdouble6timei(), historygetdouble6timer(), historygetdouble7(), historygetdouble7pointer(), historygetdouble7pointertimed(), historygetdouble7pointertimei(), historygetdouble7pointertimer(), historygetdouble7timed(), historygetdouble7timei(), historygetdouble7timer(), historygetint0(), historygetint0pointer(), historygetint0pointertimed(), historygetint0pointertimei(), historygetint0pointertimer(), historygetint0timed(), historygetint0timei(), historygetint0timer(), historygetint1(), historygetint1pointer(), historygetint1pointertimed(), historygetint1pointertimei(), historygetint1pointertimer(), historygetint1timed(), historygetint1timei(), historygetint1timer(), historygetint2(), historygetint2pointer(), historygetint2pointertimed(), historygetint2pointertimei(), historygetint2pointertimer(), historygetint2timed(), historygetint2timei(), historygetint2timer(), historygetint3(), historygetint3pointer(), historygetint3pointertimed(), historygetint3pointertimei(), historygetint3pointertimer(), historygetint3timed(), historygetint3timei(), historygetint3timer(), historygetint4(), historygetint4pointer(), historygetint4pointertimed(), historygetint4pointertimei(), historygetint4pointertimer(), historygetint4timed(), historygetint4timei(), historygetint4timer(), historygetint5(), historygetint5pointer(), historygetint5pointertimed(), historygetint5pointertimei(), historygetint5pointertimer(), historygetint5timed(), historygetint5timei(), historygetint5timer(), historygetint6(), historygetint6pointer(), historygetint6pointertimed(), historygetint6pointertimei(), historygetint6pointertimer(), historygetint6timed(), historygetint6timei(), historygetint6timer(), historygetint7(), historygetint7pointer(), historygetint7pointertimed(), historygetint7pointertimei(), historygetint7pointertimer(), historygetint7timed(), historygetint7timei(), historygetint7timer(), historygetreal0(), historygetreal0pointer(), historygetreal0pointertimed(), historygetreal0pointertimei(), historygetreal0pointertimer(), historygetreal0timed(), historygetreal0timei(), historygetreal0timer(), historygetreal1(), historygetreal1pointer(), historygetreal1pointertimed(), historygetreal1pointertimei(), historygetreal1pointertimer(), historygetreal1timed(), historygetreal1timei(), historygetreal1timer(), historygetreal2(), historygetreal2pointer(), historygetreal2pointertimed(), historygetreal2pointertimei(), historygetreal2pointertimer(), historygetreal2timed(), historygetreal2timei(), historygetreal2timer(), historygetreal3(), historygetreal3pointer(), historygetreal3pointertimed(), historygetreal3pointertimei(), historygetreal3pointertimer(), historygetreal3timed(), historygetreal3timei(), historygetreal3timer(), historygetreal4(), historygetreal4pointer(), historygetreal4pointertimed(), historygetreal4pointertimei(), historygetreal4pointertimer(), historygetreal4timed(), historygetreal4timei(), historygetreal4timer(), historygetreal5(), historygetreal5pointer(), historygetreal5pointertimed(), historygetreal5pointertimei(), historygetreal5pointertimer(), historygetreal5timed(), historygetreal5timei(), historygetreal5timer(), historygetreal6(), historygetreal6pointer(), historygetreal6pointertimed(), historygetreal6pointertimei(), historygetreal6pointertimer(), historygetreal6timed(), historygetreal6timei(), historygetreal6timer(), historygetreal7(), historygetreal7pointer(), historygetreal7pointertimed(), historygetreal7pointertimei(), historygetreal7pointertimer(), historygetreal7timed(), historygetreal7timei(), historygetreal7timer(), historygettattrchar0(), historygettattrdouble0(), historygettattrdouble1(), historygettattrint0(), historygettattrint1(), historygettattrreal0(), historygettattrreal1(), historyputcharex(), historyputdoubleex(), historyputintex(), historyputrealex(), hstnmlinfoadd(), hstnmlinfoallnamevalid(), hstnmlinfoallvarinicheck(), hstnmlinfocreate(), hstnmlinfodelete(), hstnmlinfoinquire(), hstnmlinfooutputstep(), hstnmlinfooutputvalid(), hstnmlinfosetvalidname(), lookup\+\_\+growable\+\_\+url(), putlinedouble1(), putlinedouble2(), putlinedouble3(), putlinedouble4(), putlinedouble5(), putlinedouble6(), putlinedouble7(), putlineint1(), putlineint2(), putlineint3(), putlineint4(), putlineint5(), putlineint6(), putlineint7(), putlinereal1(), putlinereal2(), putlinereal3(), putlinereal4(), putlinereal5(), putlinereal6(), and putlinereal7().


\begin{DoxyCode}
80     \textcolor{comment}{!}
81     \textcolor{comment}{! arg が省略されておらず、且つ <tt>.true.</tt> の場合、}
82     \textcolor{comment}{! <tt>.true.</tt> が返ります。}
83     \textcolor{comment}{!}
84     \textcolor{keywordtype}{logical} :: result
85     \textcolor{keywordtype}{logical},\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: arg
86   \textcolor{keywordflow}{continue}
87     \textcolor{keywordflow}{if}(\textcolor{keyword}{present}(arg)) \textcolor{keywordflow}{then}
88       \textcolor{keywordflow}{if}(arg) \textcolor{keywordflow}{then}
89         result=.true.
90       \textcolor{keywordflow}{else}
91         result=.false.
92 \textcolor{keywordflow}{      endif}
93     \textcolor{keywordflow}{else}
94       result=.false.
95 \textcolor{keywordflow}{    endif}
\end{DoxyCode}
\mbox{\Hypertarget{namespacedc__present_ad9ec27d75a905e2744228c6376bde5a5}\label{namespacedc__present_ad9ec27d75a905e2744228c6376bde5a5}} 
\index{dc\+\_\+present@{dc\+\_\+present}!present\+\_\+and\+\_\+zero@{present\+\_\+and\+\_\+zero}}
\index{present\+\_\+and\+\_\+zero@{present\+\_\+and\+\_\+zero}!dc\+\_\+present@{dc\+\_\+present}}
\subsubsection{\texorpdfstring{present\+\_\+and\+\_\+zero()}{present\_and\_zero()}}
{\footnotesize\ttfamily logical function, public dc\+\_\+present\+::present\+\_\+and\+\_\+zero (\begin{DoxyParamCaption}\item[{integer, intent(in), optional}]{arg }\end{DoxyParamCaption})}



Definition at line 118 of file dc\+\_\+present.\+f90.


\begin{DoxyCode}
118     \textcolor{comment}{!}
119     \textcolor{comment}{! arg が省略されておらず、且つ 0 の場合、}
120     \textcolor{comment}{! <tt>.true.</tt> が返ります。}
121     \textcolor{comment}{!}
122     \textcolor{keywordtype}{logical} :: result
123     \textcolor{keywordtype}{integer},\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: arg
124   \textcolor{keywordflow}{continue}
125     \textcolor{keywordflow}{if}(\textcolor{keyword}{present}(arg)) \textcolor{keywordflow}{then}
126       \textcolor{keywordflow}{if}(arg==0) \textcolor{keywordflow}{then}
127         result=.true.
128       \textcolor{keywordflow}{else}
129         result=.false.
130 \textcolor{keywordflow}{      endif}
131     \textcolor{keywordflow}{else}
132       result=.false.
133 \textcolor{keywordflow}{    endif}
\end{DoxyCode}
\mbox{\Hypertarget{namespacedc__present_aa89e79d46bd5c522150f6a5be5fd45e3}\label{namespacedc__present_aa89e79d46bd5c522150f6a5be5fd45e3}} 
\index{dc\+\_\+present@{dc\+\_\+present}!present\+\_\+select\+\_\+char@{present\+\_\+select\+\_\+char}}
\index{present\+\_\+select\+\_\+char@{present\+\_\+select\+\_\+char}!dc\+\_\+present@{dc\+\_\+present}}
\subsubsection{\texorpdfstring{present\+\_\+select\+\_\+char()}{present\_select\_char()}}
{\footnotesize\ttfamily character(string) function dc\+\_\+present\+::present\+\_\+select\+\_\+char (\begin{DoxyParamCaption}\item[{character($\ast$), intent(in)}]{invalid,  }\item[{character($\ast$), intent(in)}]{default,  }\item[{character($\ast$), intent(in), optional}]{c0,  }\item[{character($\ast$), intent(in), optional}]{c1,  }\item[{character($\ast$), intent(in), optional}]{c2,  }\item[{character($\ast$), intent(in), optional}]{c3,  }\item[{character($\ast$), intent(in), optional}]{c4,  }\item[{character($\ast$), intent(in), optional}]{c5,  }\item[{character($\ast$), intent(in), optional}]{c6,  }\item[{character($\ast$), intent(in), optional}]{c7,  }\item[{character($\ast$), intent(in), optional}]{c8,  }\item[{character($\ast$), intent(in), optional}]{c9 }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 308 of file dc\+\_\+present.\+f90.


\begin{DoxyCode}
308     \textcolor{comment}{!}
309     \textcolor{comment}{! 省略可能な引数 c0 〜 c9 のうち、}
310     \textcolor{comment}{! 省略されておらず、且つ invalid と等しくないものを 1 つ返します。}
311     \textcolor{comment}{! 優先順位が最も高いものは c0 で、}
312     \textcolor{comment}{! 最も低いのは c9 です。}
313     \textcolor{comment}{! c0 〜 c9 の全てが省略されているか}
314     \textcolor{comment}{! もしくは invalid と同様な場合は default が返ります。}
315     \textcolor{comment}{!}
316     \textcolor{keywordtype}{implicit none}
317     \textcolor{keywordtype}{character(*)}     ,\textcolor{keywordtype}{intent(in)}          :: invalid
318     \textcolor{keywordtype}{character(*)}     ,\textcolor{keywordtype}{intent(in)}          :: \hyperlink{namespacegtool__history__internal_aa7fc82d2ca1961a254be1acb599afbb1}{default}
319     \textcolor{keywordtype}{character(*)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: c0
320     \textcolor{keywordtype}{character(*)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: c1
321     \textcolor{keywordtype}{character(*)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: c2
322     \textcolor{keywordtype}{character(*)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: c3
323     \textcolor{keywordtype}{character(*)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: c4
324     \textcolor{keywordtype}{character(*)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: c5
325     \textcolor{keywordtype}{character(*)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: c6
326     \textcolor{keywordtype}{character(*)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: c7
327     \textcolor{keywordtype}{character(*)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: c8
328     \textcolor{keywordtype}{character(*)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: c9
329     \textcolor{keywordtype}{character(STRING)}                         :: result
330 
331     \textcolor{comment}{!=== Variables for internal work}
332     \textcolor{keywordtype}{logical}                 :: specified
333     \textcolor{keywordtype}{character(*)},  \textcolor{keywordtype}{parameter}:: subname = \textcolor{stringliteral}{'present\_select\_Char'}
334   \textcolor{keywordflow}{continue}
335 
336 \textcolor{comment}{!!$    call BeginSub(subname, 'invalid=%c default=%c',  &}
337 \textcolor{comment}{!!$      &        c1=trim(invalid), c2=trim(default)   )}
338     specified = .false.
339 
340     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(c0) ) \textcolor{keywordflow}{then}
341       \textcolor{keywordflow}{if} ( len(trim(c0)) > len(trim(invalid)) ) \textcolor{keywordflow}{then}
342         result = c0
343         specified = .true.
344       \textcolor{keywordflow}{else}
345         \textcolor{keywordflow}{if} ( trim(c0) /= invalid(:len(trim(c0))) ) \textcolor{keywordflow}{then}
346           result = c0
347           specified = .true.
348 \textcolor{keywordflow}{        endif}
349 \textcolor{keywordflow}{      end if}
350 \textcolor{keywordflow}{    end if}
351 
352     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(c1) .and. .not. specified) \textcolor{keywordflow}{then}
353       \textcolor{keywordflow}{if} ( len(trim(c1)) > len(trim(invalid)) ) \textcolor{keywordflow}{then}
354         result = c1
355         specified = .true.
356       \textcolor{keywordflow}{else}
357         \textcolor{keywordflow}{if} ( trim(c1) /= invalid(:len(trim(c1))) ) \textcolor{keywordflow}{then}
358           result = c1
359           specified = .true.
360 \textcolor{keywordflow}{        endif}
361 \textcolor{keywordflow}{      end if}
362 \textcolor{keywordflow}{    end if}
363     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(c2) .and. .not. specified) \textcolor{keywordflow}{then}
364       \textcolor{keywordflow}{if} ( len(trim(c2)) > len(trim(invalid)) ) \textcolor{keywordflow}{then}
365         result = c2
366         specified = .true.
367       \textcolor{keywordflow}{else}
368         \textcolor{keywordflow}{if} ( trim(c2) /= invalid(:len(trim(c2))) ) \textcolor{keywordflow}{then}
369           result = c2
370           specified = .true.
371 \textcolor{keywordflow}{        endif}
372 \textcolor{keywordflow}{      end if}
373 \textcolor{keywordflow}{    end if}
374     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(c3) .and. .not. specified) \textcolor{keywordflow}{then}
375       \textcolor{keywordflow}{if} ( len(trim(c3)) > len(trim(invalid)) ) \textcolor{keywordflow}{then}
376         result = c3
377         specified = .true.
378       \textcolor{keywordflow}{else}
379         \textcolor{keywordflow}{if} ( trim(c3) /= invalid(:len(trim(c3))) ) \textcolor{keywordflow}{then}
380           result = c3
381           specified = .true.
382 \textcolor{keywordflow}{        endif}
383 \textcolor{keywordflow}{      end if}
384 \textcolor{keywordflow}{    end if}
385     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(c4) .and. .not. specified) \textcolor{keywordflow}{then}
386       \textcolor{keywordflow}{if} ( len(trim(c4)) > len(trim(invalid)) ) \textcolor{keywordflow}{then}
387         result = c4
388         specified = .true.
389       \textcolor{keywordflow}{else}
390         \textcolor{keywordflow}{if} ( trim(c4) /= invalid(:len(trim(c4))) ) \textcolor{keywordflow}{then}
391           result = c4
392           specified = .true.
393 \textcolor{keywordflow}{        endif}
394 \textcolor{keywordflow}{      end if}
395 \textcolor{keywordflow}{    end if}
396     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(c5) .and. .not. specified) \textcolor{keywordflow}{then}
397       \textcolor{keywordflow}{if} ( len(trim(c5)) > len(trim(invalid)) ) \textcolor{keywordflow}{then}
398         result = c5
399         specified = .true.
400       \textcolor{keywordflow}{else}
401         \textcolor{keywordflow}{if} ( trim(c5) /= invalid(:len(trim(c5))) ) \textcolor{keywordflow}{then}
402           result = c5
403           specified = .true.
404 \textcolor{keywordflow}{        endif}
405 \textcolor{keywordflow}{      end if}
406 \textcolor{keywordflow}{    end if}
407     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(c6) .and. .not. specified) \textcolor{keywordflow}{then}
408       \textcolor{keywordflow}{if} ( len(trim(c6)) > len(trim(invalid)) ) \textcolor{keywordflow}{then}
409         result = c6
410         specified = .true.
411       \textcolor{keywordflow}{else}
412         \textcolor{keywordflow}{if} ( trim(c6) /= invalid(:len(trim(c6))) ) \textcolor{keywordflow}{then}
413           result = c6
414           specified = .true.
415 \textcolor{keywordflow}{        endif}
416 \textcolor{keywordflow}{      end if}
417 \textcolor{keywordflow}{    end if}
418     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(c7) .and. .not. specified) \textcolor{keywordflow}{then}
419       \textcolor{keywordflow}{if} ( len(trim(c7)) > len(trim(invalid)) ) \textcolor{keywordflow}{then}
420         result = c7
421         specified = .true.
422       \textcolor{keywordflow}{else}
423         \textcolor{keywordflow}{if} ( trim(c7) /= invalid(:len(trim(c7))) ) \textcolor{keywordflow}{then}
424           result = c7
425           specified = .true.
426 \textcolor{keywordflow}{        endif}
427 \textcolor{keywordflow}{      end if}
428 \textcolor{keywordflow}{    end if}
429     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(c8) .and. .not. specified) \textcolor{keywordflow}{then}
430       \textcolor{keywordflow}{if} ( len(trim(c8)) > len(trim(invalid)) ) \textcolor{keywordflow}{then}
431         result = c8
432         specified = .true.
433       \textcolor{keywordflow}{else}
434         \textcolor{keywordflow}{if} ( trim(c8) /= invalid(:len(trim(c8))) ) \textcolor{keywordflow}{then}
435           result = c8
436           specified = .true.
437 \textcolor{keywordflow}{        endif}
438 \textcolor{keywordflow}{      end if}
439 \textcolor{keywordflow}{    end if}
440     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(c9) .and. .not. specified) \textcolor{keywordflow}{then}
441       \textcolor{keywordflow}{if} ( len(trim(c9)) > len(trim(invalid)) ) \textcolor{keywordflow}{then}
442         result = c9
443         specified = .true.
444       \textcolor{keywordflow}{else}
445         \textcolor{keywordflow}{if} ( trim(c9) /= invalid(:len(trim(c9))) ) \textcolor{keywordflow}{then}
446           result = c9
447           specified = .true.
448 \textcolor{keywordflow}{        endif}
449 \textcolor{keywordflow}{      end if}
450 \textcolor{keywordflow}{    end if}
451 
452     \textcolor{keywordflow}{if} (.not. specified) \textcolor{keywordflow}{then}
453       result = \hyperlink{namespacegtool__history__internal_aa7fc82d2ca1961a254be1acb599afbb1}{default}
454 \textcolor{keywordflow}{    end if}
455 
456 \textcolor{comment}{!!$    call EndSub(subname, "result=%c", c1=trim(result))}
457 
\end{DoxyCode}
\mbox{\Hypertarget{namespacedc__present_af996800524db28e41b3cb2dd0c7dd776}\label{namespacedc__present_af996800524db28e41b3cb2dd0c7dd776}} 
\index{dc\+\_\+present@{dc\+\_\+present}!present\+\_\+select\+\_\+char\+\_\+auto@{present\+\_\+select\+\_\+char\+\_\+auto}}
\index{present\+\_\+select\+\_\+char\+\_\+auto@{present\+\_\+select\+\_\+char\+\_\+auto}!dc\+\_\+present@{dc\+\_\+present}}
\subsubsection{\texorpdfstring{present\+\_\+select\+\_\+char\+\_\+auto()}{present\_select\_char\_auto()}}
{\footnotesize\ttfamily character(string) function dc\+\_\+present\+::present\+\_\+select\+\_\+char\+\_\+auto (\begin{DoxyParamCaption}\item[{logical, intent(in)}]{invalid,  }\item[{character($\ast$), intent(in)}]{default,  }\item[{character($\ast$), intent(in), optional}]{c0,  }\item[{character($\ast$), intent(in), optional}]{c1,  }\item[{character($\ast$), intent(in), optional}]{c2,  }\item[{character($\ast$), intent(in), optional}]{c3,  }\item[{character($\ast$), intent(in), optional}]{c4,  }\item[{character($\ast$), intent(in), optional}]{c5,  }\item[{character($\ast$), intent(in), optional}]{c6,  }\item[{character($\ast$), intent(in), optional}]{c7,  }\item[{character($\ast$), intent(in), optional}]{c8,  }\item[{character($\ast$), intent(in), optional}]{c9 }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 828 of file dc\+\_\+present.\+f90.


\begin{DoxyCode}
828     \textcolor{comment}{!}
829     \textcolor{comment}{! invalid に <tt>.false.</tt> を与えた場合、省略可能な引数}
830     \textcolor{comment}{! c0 〜 c9 のうち、}
831     \textcolor{comment}{! 省略されておらず且つ優先順位が最も高いものを}
832     \textcolor{comment}{! 1 つ返します。優先順位が最も高いのは c0 で、}
833     \textcolor{comment}{! 最も低いのは c9 です。}
834     \textcolor{comment}{!}
835     \textcolor{comment}{! invarlid が .true. の場合は、}
836     \textcolor{comment}{! 空文字 (空白のみの場合も空文字と扱う) は省略されている}
837     \textcolor{comment}{! のと同様に扱われ、優先順位に関わらず無視されます。}
838     \textcolor{comment}{! 与えられた引数の全てが空文字の場合は default が返ります。}
839     \textcolor{comment}{!}
840     \textcolor{keywordtype}{implicit none}
841     \textcolor{keywordtype}{logical}          ,\textcolor{keywordtype}{intent(in)}          :: invalid
842     \textcolor{keywordtype}{character(*)}     ,\textcolor{keywordtype}{intent(in)}          :: \hyperlink{namespacegtool__history__internal_aa7fc82d2ca1961a254be1acb599afbb1}{default}
843     \textcolor{keywordtype}{character(*)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: c0
844     \textcolor{keywordtype}{character(*)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: c1
845     \textcolor{keywordtype}{character(*)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: c2
846     \textcolor{keywordtype}{character(*)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: c3
847     \textcolor{keywordtype}{character(*)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: c4
848     \textcolor{keywordtype}{character(*)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: c5
849     \textcolor{keywordtype}{character(*)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: c6
850     \textcolor{keywordtype}{character(*)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: c7
851     \textcolor{keywordtype}{character(*)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: c8
852     \textcolor{keywordtype}{character(*)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: c9
853     \textcolor{keywordtype}{character(STRING)}                         :: result
854 
855     \textcolor{comment}{!=== Variables for internal work}
856     \textcolor{keywordtype}{logical}                 :: specified
857     \textcolor{keywordtype}{character(*)},  \textcolor{keywordtype}{parameter}:: subname = \textcolor{stringliteral}{"present\_select\_Char\_auto"}
858   \textcolor{keywordflow}{continue}
859 
860 \textcolor{comment}{!!$    call BeginSub(subname, 'invalid=%y default=%c',  &}
861 \textcolor{comment}{!!$      &        l=(/invalid/), c1=trim(default)   )}
862     specified = .false.
863 
864     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(c0) ) \textcolor{keywordflow}{then}
865        \textcolor{keywordflow}{if} ( trim(c0) /= \textcolor{stringliteral}{''} ) \textcolor{keywordflow}{then}
866           result = c0
867           specified = .true.
868 \textcolor{keywordflow}{       endif}
869 \textcolor{keywordflow}{    end if}
870 
871     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(c1) .and. .not. specified ) \textcolor{keywordflow}{then}
872        \textcolor{keywordflow}{if} ( trim(c1) /= \textcolor{stringliteral}{''} ) \textcolor{keywordflow}{then}
873           result = c1
874           specified = .true.
875 \textcolor{keywordflow}{       endif}
876 \textcolor{keywordflow}{    end if}
877     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(c2) .and. .not. specified ) \textcolor{keywordflow}{then}
878        \textcolor{keywordflow}{if} ( trim(c2) /= \textcolor{stringliteral}{''} ) \textcolor{keywordflow}{then}
879           result = c2
880           specified = .true.
881 \textcolor{keywordflow}{       endif}
882 \textcolor{keywordflow}{    end if}
883     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(c3) .and. .not. specified ) \textcolor{keywordflow}{then}
884        \textcolor{keywordflow}{if} ( trim(c3) /= \textcolor{stringliteral}{''} ) \textcolor{keywordflow}{then}
885           result = c3
886           specified = .true.
887 \textcolor{keywordflow}{       endif}
888 \textcolor{keywordflow}{    end if}
889     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(c4) .and. .not. specified ) \textcolor{keywordflow}{then}
890        \textcolor{keywordflow}{if} ( trim(c4) /= \textcolor{stringliteral}{''} ) \textcolor{keywordflow}{then}
891           result = c4
892           specified = .true.
893 \textcolor{keywordflow}{       endif}
894 \textcolor{keywordflow}{    end if}
895     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(c5) .and. .not. specified ) \textcolor{keywordflow}{then}
896        \textcolor{keywordflow}{if} ( trim(c5) /= \textcolor{stringliteral}{''} ) \textcolor{keywordflow}{then}
897           result = c5
898           specified = .true.
899 \textcolor{keywordflow}{       endif}
900 \textcolor{keywordflow}{    end if}
901     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(c6) .and. .not. specified ) \textcolor{keywordflow}{then}
902        \textcolor{keywordflow}{if} ( trim(c6) /= \textcolor{stringliteral}{''} ) \textcolor{keywordflow}{then}
903           result = c6
904           specified = .true.
905 \textcolor{keywordflow}{       endif}
906 \textcolor{keywordflow}{    end if}
907     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(c7) .and. .not. specified ) \textcolor{keywordflow}{then}
908        \textcolor{keywordflow}{if} ( trim(c7) /= \textcolor{stringliteral}{''} ) \textcolor{keywordflow}{then}
909           result = c7
910           specified = .true.
911 \textcolor{keywordflow}{       endif}
912 \textcolor{keywordflow}{    end if}
913     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(c8) .and. .not. specified ) \textcolor{keywordflow}{then}
914        \textcolor{keywordflow}{if} ( trim(c8) /= \textcolor{stringliteral}{''} ) \textcolor{keywordflow}{then}
915           result = c8
916           specified = .true.
917 \textcolor{keywordflow}{       endif}
918 \textcolor{keywordflow}{    end if}
919     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(c9) .and. .not. specified ) \textcolor{keywordflow}{then}
920        \textcolor{keywordflow}{if} ( trim(c9) /= \textcolor{stringliteral}{''} ) \textcolor{keywordflow}{then}
921           result = c9
922           specified = .true.
923 \textcolor{keywordflow}{       endif}
924 \textcolor{keywordflow}{    end if}
925 
926     \textcolor{keywordflow}{if} (.not. specified) \textcolor{keywordflow}{then}
927        result = \hyperlink{namespacegtool__history__internal_aa7fc82d2ca1961a254be1acb599afbb1}{default}
928 \textcolor{keywordflow}{    end if}
929 
930 \textcolor{comment}{!!$    call EndSub(subname, "result=%c", c1=trim(result))}
931 
\end{DoxyCode}
\mbox{\Hypertarget{namespacedc__present_a5b6f19c2b314ffc46d895c9664a56c28}\label{namespacedc__present_a5b6f19c2b314ffc46d895c9664a56c28}} 
\index{dc\+\_\+present@{dc\+\_\+present}!present\+\_\+select\+\_\+double@{present\+\_\+select\+\_\+double}}
\index{present\+\_\+select\+\_\+double@{present\+\_\+select\+\_\+double}!dc\+\_\+present@{dc\+\_\+present}}
\subsubsection{\texorpdfstring{present\+\_\+select\+\_\+double()}{present\_select\_double()}}
{\footnotesize\ttfamily real(dp) function dc\+\_\+present\+::present\+\_\+select\+\_\+double (\begin{DoxyParamCaption}\item[{real(dp), intent(in)}]{invalid,  }\item[{real(dp), intent(in)}]{default,  }\item[{real(dp), intent(in), optional}]{f0,  }\item[{real(dp), intent(in), optional}]{f1,  }\item[{real(dp), intent(in), optional}]{f2,  }\item[{real(dp), intent(in), optional}]{f3,  }\item[{real(dp), intent(in), optional}]{f4,  }\item[{real(dp), intent(in), optional}]{f5,  }\item[{real(dp), intent(in), optional}]{f6,  }\item[{real(dp), intent(in), optional}]{f7,  }\item[{real(dp), intent(in), optional}]{f8,  }\item[{real(dp), intent(in), optional}]{f9 }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 710 of file dc\+\_\+present.\+f90.


\begin{DoxyCode}
710     \textcolor{comment}{!}
711     \textcolor{comment}{! 省略可能な引数 f0 〜 f9 のうち、}
712     \textcolor{comment}{! 省略されておらず、且つ invalid と等しくないものを 1 つ返します。}
713     \textcolor{comment}{! 優先順位が最も高いものは f0 で、}
714     \textcolor{comment}{! 最も低いのは f9 です。}
715     \textcolor{comment}{! f0 〜 f9 の全てが省略されているか}
716     \textcolor{comment}{! もしくは invalid と同様な場合は default が返ります。}
717     \textcolor{comment}{!}
718     \textcolor{keywordtype}{implicit none}
719     \textcolor{keywordtype}{real(DP)}     ,\textcolor{keywordtype}{intent(in)}          :: invalid
720     \textcolor{keywordtype}{real(DP)}     ,\textcolor{keywordtype}{intent(in)}          :: \hyperlink{namespacegtool__history__internal_aa7fc82d2ca1961a254be1acb599afbb1}{default}
721     \textcolor{keywordtype}{real(DP)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: f0
722     \textcolor{keywordtype}{real(DP)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: f1
723     \textcolor{keywordtype}{real(DP)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: f2
724     \textcolor{keywordtype}{real(DP)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: f3
725     \textcolor{keywordtype}{real(DP)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: f4
726     \textcolor{keywordtype}{real(DP)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: f5
727     \textcolor{keywordtype}{real(DP)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: f6
728     \textcolor{keywordtype}{real(DP)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: f7
729     \textcolor{keywordtype}{real(DP)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: f8
730     \textcolor{keywordtype}{real(DP)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: f9
731     \textcolor{keywordtype}{real(DP)}                         :: result
732 
733     \textcolor{comment}{!=== Variables for internal work}
734     \textcolor{keywordtype}{logical}                 :: specified
735     \textcolor{keywordtype}{character(*)},  \textcolor{keywordtype}{parameter}:: subname = \textcolor{stringliteral}{'present\_select\_Double'}
736   \textcolor{keywordflow}{continue}
737 
738 \textcolor{comment}{!!$    call BeginSub(subname, &}
739 \textcolor{comment}{!!$      &        'invalid=%f default=%f',  &}
740 \textcolor{comment}{!!$      &        d=(/invalid, default/))}
741     specified = .false.
742 
743     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(f0) ) \textcolor{keywordflow}{then}
744       \textcolor{keywordflow}{if} ( f0 /= invalid ) \textcolor{keywordflow}{then}
745         result = f0
746         specified = .true.
747 \textcolor{keywordflow}{      endif}
748 \textcolor{keywordflow}{    end if}
749 
750     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(f1) .and. .not. specified ) \textcolor{keywordflow}{then}
751       \textcolor{keywordflow}{if} ( f1 /= invalid ) \textcolor{keywordflow}{then}
752         result = f1
753         specified = .true.
754 \textcolor{keywordflow}{      endif}
755 \textcolor{keywordflow}{    end if}
756     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(f2) .and. .not. specified ) \textcolor{keywordflow}{then}
757       \textcolor{keywordflow}{if} ( f2 /= invalid ) \textcolor{keywordflow}{then}
758         result = f2
759         specified = .true.
760 \textcolor{keywordflow}{      endif}
761 \textcolor{keywordflow}{    end if}
762     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(f3) .and. .not. specified ) \textcolor{keywordflow}{then}
763       \textcolor{keywordflow}{if} ( f3 /= invalid ) \textcolor{keywordflow}{then}
764         result = f3
765         specified = .true.
766 \textcolor{keywordflow}{      endif}
767 \textcolor{keywordflow}{    end if}
768     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(f4) .and. .not. specified ) \textcolor{keywordflow}{then}
769       \textcolor{keywordflow}{if} ( f4 /= invalid ) \textcolor{keywordflow}{then}
770         result = f4
771         specified = .true.
772 \textcolor{keywordflow}{      endif}
773 \textcolor{keywordflow}{    end if}
774     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(f5) .and. .not. specified ) \textcolor{keywordflow}{then}
775       \textcolor{keywordflow}{if} ( f5 /= invalid ) \textcolor{keywordflow}{then}
776         result = f5
777         specified = .true.
778 \textcolor{keywordflow}{      endif}
779 \textcolor{keywordflow}{    end if}
780     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(f6) .and. .not. specified ) \textcolor{keywordflow}{then}
781       \textcolor{keywordflow}{if} ( f6 /= invalid ) \textcolor{keywordflow}{then}
782         result = f6
783         specified = .true.
784 \textcolor{keywordflow}{      endif}
785 \textcolor{keywordflow}{    end if}
786     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(f7) .and. .not. specified ) \textcolor{keywordflow}{then}
787       \textcolor{keywordflow}{if} ( f7 /= invalid ) \textcolor{keywordflow}{then}
788         result = f7
789         specified = .true.
790 \textcolor{keywordflow}{      endif}
791 \textcolor{keywordflow}{    end if}
792     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(f8) .and. .not. specified ) \textcolor{keywordflow}{then}
793       \textcolor{keywordflow}{if} ( f8 /= invalid ) \textcolor{keywordflow}{then}
794         result = f8
795         specified = .true.
796 \textcolor{keywordflow}{      endif}
797 \textcolor{keywordflow}{    end if}
798     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(f9) .and. .not. specified ) \textcolor{keywordflow}{then}
799       \textcolor{keywordflow}{if} ( f9 /= invalid ) \textcolor{keywordflow}{then}
800         result = f9
801         specified = .true.
802 \textcolor{keywordflow}{      endif}
803 \textcolor{keywordflow}{    end if}
804 
805     \textcolor{keywordflow}{if} (.not. specified) \textcolor{keywordflow}{then}
806       result = \hyperlink{namespacegtool__history__internal_aa7fc82d2ca1961a254be1acb599afbb1}{default}
807 \textcolor{keywordflow}{    end if}
808 
809 \textcolor{comment}{!!$    call EndSub(subname, "result=%f", &}
810 \textcolor{comment}{!!$      &      d=(/result/))}
811 
\end{DoxyCode}
\mbox{\Hypertarget{namespacedc__present_a2e6e9ed5cb06f60dcc999a4186164738}\label{namespacedc__present_a2e6e9ed5cb06f60dcc999a4186164738}} 
\index{dc\+\_\+present@{dc\+\_\+present}!present\+\_\+select\+\_\+double\+\_\+auto@{present\+\_\+select\+\_\+double\+\_\+auto}}
\index{present\+\_\+select\+\_\+double\+\_\+auto@{present\+\_\+select\+\_\+double\+\_\+auto}!dc\+\_\+present@{dc\+\_\+present}}
\subsubsection{\texorpdfstring{present\+\_\+select\+\_\+double\+\_\+auto()}{present\_select\_double\_auto()}}
{\footnotesize\ttfamily real(dp) function dc\+\_\+present\+::present\+\_\+select\+\_\+double\+\_\+auto (\begin{DoxyParamCaption}\item[{logical, intent(in)}]{invalid,  }\item[{real(dp), intent(in)}]{default,  }\item[{real(dp), intent(in), optional}]{f0,  }\item[{real(dp), intent(in), optional}]{f1,  }\item[{real(dp), intent(in), optional}]{f2,  }\item[{real(dp), intent(in), optional}]{f3,  }\item[{real(dp), intent(in), optional}]{f4,  }\item[{real(dp), intent(in), optional}]{f5,  }\item[{real(dp), intent(in), optional}]{f6,  }\item[{real(dp), intent(in), optional}]{f7,  }\item[{real(dp), intent(in), optional}]{f8,  }\item[{real(dp), intent(in), optional}]{f9 }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 1252 of file dc\+\_\+present.\+f90.


\begin{DoxyCode}
1252     \textcolor{comment}{!}
1253     \textcolor{comment}{! invalid に <tt>.false.</tt> を与えた場合、省略可能な引数}
1254     \textcolor{comment}{! f0 〜 f9 のうち、}
1255     \textcolor{comment}{! 省略されておらず且つ優先順位が最も高いものを}
1256     \textcolor{comment}{! 1 つ返します。優先順位が最も高いのは f0 で、}
1257     \textcolor{comment}{! 最も低いのは f9 です。}
1258     \textcolor{comment}{!}
1259     \textcolor{comment}{! invarlid が .true. の場合は、}
1260     \textcolor{comment}{! 0 は省略されている}
1261     \textcolor{comment}{! のと同様に扱われ、優先順位に関わらず無視されます。}
1262     \textcolor{comment}{! 与えられた引数の全てが 0 の場合は default が返ります。}
1263     \textcolor{comment}{!}
1264     \textcolor{keywordtype}{implicit none}
1265     \textcolor{keywordtype}{logical}          ,\textcolor{keywordtype}{intent(in)}          :: invalid
1266     \textcolor{keywordtype}{real(DP)}     ,\textcolor{keywordtype}{intent(in)}          :: \hyperlink{namespacegtool__history__internal_aa7fc82d2ca1961a254be1acb599afbb1}{default}
1267     \textcolor{keywordtype}{real(DP)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: f0
1268     \textcolor{keywordtype}{real(DP)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: f1
1269     \textcolor{keywordtype}{real(DP)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: f2
1270     \textcolor{keywordtype}{real(DP)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: f3
1271     \textcolor{keywordtype}{real(DP)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: f4
1272     \textcolor{keywordtype}{real(DP)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: f5
1273     \textcolor{keywordtype}{real(DP)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: f6
1274     \textcolor{keywordtype}{real(DP)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: f7
1275     \textcolor{keywordtype}{real(DP)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: f8
1276     \textcolor{keywordtype}{real(DP)}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: f9
1277     \textcolor{keywordtype}{real(DP)}                         :: result
1278 
1279     \textcolor{comment}{!=== Variables for internal work}
1280     \textcolor{keywordtype}{logical}                 :: specified
1281     \textcolor{keywordtype}{character(*)},  \textcolor{keywordtype}{parameter}:: subname = \textcolor{stringliteral}{"present\_select\_Double\_auto"}
1282   \textcolor{keywordflow}{continue}
1283 
1284 \textcolor{comment}{!!$    call BeginSub(subname, &}
1285 \textcolor{comment}{!!$      &        'invalid=%y default=%f',  &}
1286 \textcolor{comment}{!!$      &        l=(/invalid/), d=(/default/))}
1287     specified = .false.
1288 
1289     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(f0) ) \textcolor{keywordflow}{then}
1290        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
1291           result = f0
1292           specified = .true.
1293        \textcolor{keywordflow}{elseif} ( f0 /= 0.0\_dp ) \textcolor{keywordflow}{then}
1294           result = f0
1295           specified = .true.
1296 \textcolor{keywordflow}{       endif}
1297 \textcolor{keywordflow}{    end if}
1298 
1299     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(f1) .and. .not. specified ) \textcolor{keywordflow}{then}
1300        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
1301           result = f1
1302           specified = .true.
1303        \textcolor{keywordflow}{elseif} ( f1 /= 0.0\_dp ) \textcolor{keywordflow}{then}
1304           result = f1
1305           specified = .true.
1306 \textcolor{keywordflow}{       endif}
1307 \textcolor{keywordflow}{    end if}
1308     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(f2) .and. .not. specified ) \textcolor{keywordflow}{then}
1309        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
1310           result = f2
1311           specified = .true.
1312        \textcolor{keywordflow}{elseif} ( f2 /= 0.0\_dp ) \textcolor{keywordflow}{then}
1313           result = f2
1314           specified = .true.
1315 \textcolor{keywordflow}{       endif}
1316 \textcolor{keywordflow}{    end if}
1317     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(f3) .and. .not. specified ) \textcolor{keywordflow}{then}
1318        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
1319           result = f3
1320           specified = .true.
1321        \textcolor{keywordflow}{elseif} ( f3 /= 0.0\_dp ) \textcolor{keywordflow}{then}
1322           result = f3
1323           specified = .true.
1324 \textcolor{keywordflow}{       endif}
1325 \textcolor{keywordflow}{    end if}
1326     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(f4) .and. .not. specified ) \textcolor{keywordflow}{then}
1327        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
1328           result = f4
1329           specified = .true.
1330        \textcolor{keywordflow}{elseif} ( f4 /= 0.0\_dp ) \textcolor{keywordflow}{then}
1331           result = f4
1332           specified = .true.
1333 \textcolor{keywordflow}{       endif}
1334 \textcolor{keywordflow}{    end if}
1335     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(f5) .and. .not. specified ) \textcolor{keywordflow}{then}
1336        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
1337           result = f5
1338           specified = .true.
1339        \textcolor{keywordflow}{elseif} ( f5 /= 0.0\_dp ) \textcolor{keywordflow}{then}
1340           result = f5
1341           specified = .true.
1342 \textcolor{keywordflow}{       endif}
1343 \textcolor{keywordflow}{    end if}
1344     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(f6) .and. .not. specified ) \textcolor{keywordflow}{then}
1345        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
1346           result = f6
1347           specified = .true.
1348        \textcolor{keywordflow}{elseif} ( f6 /= 0.0\_dp ) \textcolor{keywordflow}{then}
1349           result = f6
1350           specified = .true.
1351 \textcolor{keywordflow}{       endif}
1352 \textcolor{keywordflow}{    end if}
1353     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(f7) .and. .not. specified ) \textcolor{keywordflow}{then}
1354        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
1355           result = f7
1356           specified = .true.
1357        \textcolor{keywordflow}{elseif} ( f7 /= 0.0\_dp ) \textcolor{keywordflow}{then}
1358           result = f7
1359           specified = .true.
1360 \textcolor{keywordflow}{       endif}
1361 \textcolor{keywordflow}{    end if}
1362     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(f8) .and. .not. specified ) \textcolor{keywordflow}{then}
1363        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
1364           result = f8
1365           specified = .true.
1366        \textcolor{keywordflow}{elseif} ( f8 /= 0.0\_dp ) \textcolor{keywordflow}{then}
1367           result = f8
1368           specified = .true.
1369 \textcolor{keywordflow}{       endif}
1370 \textcolor{keywordflow}{    end if}
1371     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(f9) .and. .not. specified ) \textcolor{keywordflow}{then}
1372        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
1373           result = f9
1374           specified = .true.
1375        \textcolor{keywordflow}{elseif} ( f9 /= 0.0\_dp ) \textcolor{keywordflow}{then}
1376           result = f9
1377           specified = .true.
1378 \textcolor{keywordflow}{       endif}
1379 \textcolor{keywordflow}{    end if}
1380 
1381     \textcolor{keywordflow}{if} (.not. specified) \textcolor{keywordflow}{then}
1382        result = \hyperlink{namespacegtool__history__internal_aa7fc82d2ca1961a254be1acb599afbb1}{default}
1383 \textcolor{keywordflow}{    end if}
1384 
1385 \textcolor{comment}{!!$    call EndSub(subname, "result=%f", &}
1386 \textcolor{comment}{!!$      &      d=(/result/))}
1387 
\end{DoxyCode}
\mbox{\Hypertarget{namespacedc__present_a42115ed856452953e9b497a32ddac4e0}\label{namespacedc__present_a42115ed856452953e9b497a32ddac4e0}} 
\index{dc\+\_\+present@{dc\+\_\+present}!present\+\_\+select\+\_\+int@{present\+\_\+select\+\_\+int}}
\index{present\+\_\+select\+\_\+int@{present\+\_\+select\+\_\+int}!dc\+\_\+present@{dc\+\_\+present}}
\subsubsection{\texorpdfstring{present\+\_\+select\+\_\+int()}{present\_select\_int()}}
{\footnotesize\ttfamily integer function dc\+\_\+present\+::present\+\_\+select\+\_\+int (\begin{DoxyParamCaption}\item[{integer, intent(in)}]{invalid,  }\item[{integer, intent(in)}]{default,  }\item[{integer, intent(in), optional}]{d0,  }\item[{integer, intent(in), optional}]{d1,  }\item[{integer, intent(in), optional}]{d2,  }\item[{integer, intent(in), optional}]{d3,  }\item[{integer, intent(in), optional}]{d4,  }\item[{integer, intent(in), optional}]{d5,  }\item[{integer, intent(in), optional}]{d6,  }\item[{integer, intent(in), optional}]{d7,  }\item[{integer, intent(in), optional}]{d8,  }\item[{integer, intent(in), optional}]{d9 }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 474 of file dc\+\_\+present.\+f90.


\begin{DoxyCode}
474     \textcolor{comment}{!}
475     \textcolor{comment}{! 省略可能な引数 d0 〜 d9 のうち、}
476     \textcolor{comment}{! 省略されておらず、且つ invalid と等しくないものを 1 つ返します。}
477     \textcolor{comment}{! 優先順位が最も高いものは d0 で、}
478     \textcolor{comment}{! 最も低いのは d9 です。}
479     \textcolor{comment}{! d0 〜 d9 の全てが省略されているか}
480     \textcolor{comment}{! もしくは invalid と同様な場合は default が返ります。}
481     \textcolor{comment}{!}
482     \textcolor{keywordtype}{implicit none}
483     \textcolor{keywordtype}{integer}     ,\textcolor{keywordtype}{intent(in)}          :: invalid
484     \textcolor{keywordtype}{integer}     ,\textcolor{keywordtype}{intent(in)}          :: \hyperlink{namespacegtool__history__internal_aa7fc82d2ca1961a254be1acb599afbb1}{default}
485     \textcolor{keywordtype}{integer}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: d0
486     \textcolor{keywordtype}{integer}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: d1
487     \textcolor{keywordtype}{integer}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: d2
488     \textcolor{keywordtype}{integer}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: d3
489     \textcolor{keywordtype}{integer}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: d4
490     \textcolor{keywordtype}{integer}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: d5
491     \textcolor{keywordtype}{integer}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: d6
492     \textcolor{keywordtype}{integer}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: d7
493     \textcolor{keywordtype}{integer}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: d8
494     \textcolor{keywordtype}{integer}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: d9
495     \textcolor{keywordtype}{integer}                         :: result
496 
497     \textcolor{comment}{!=== Variables for internal work}
498     \textcolor{keywordtype}{logical}                 :: specified
499     \textcolor{keywordtype}{character(*)},  \textcolor{keywordtype}{parameter}:: subname = \textcolor{stringliteral}{'present\_select\_Int'}
500   \textcolor{keywordflow}{continue}
501 
502 \textcolor{comment}{!!$    call BeginSub(subname, &}
503 \textcolor{comment}{!!$      &        'invalid=%d default=%d',  &}
504 \textcolor{comment}{!!$      &        i=(/invalid, default/))}
505     specified = .false.
506 
507     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(d0) ) \textcolor{keywordflow}{then}
508       \textcolor{keywordflow}{if} ( d0 /= invalid ) \textcolor{keywordflow}{then}
509         result = d0
510         specified = .true.
511 \textcolor{keywordflow}{      endif}
512 \textcolor{keywordflow}{    end if}
513 
514     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(d1) .and. .not. specified ) \textcolor{keywordflow}{then}
515       \textcolor{keywordflow}{if} ( d1 /= invalid ) \textcolor{keywordflow}{then}
516         result = d1
517         specified = .true.
518 \textcolor{keywordflow}{      endif}
519 \textcolor{keywordflow}{    end if}
520     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(d2) .and. .not. specified ) \textcolor{keywordflow}{then}
521       \textcolor{keywordflow}{if} ( d2 /= invalid ) \textcolor{keywordflow}{then}
522         result = d2
523         specified = .true.
524 \textcolor{keywordflow}{      endif}
525 \textcolor{keywordflow}{    end if}
526     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(d3) .and. .not. specified ) \textcolor{keywordflow}{then}
527       \textcolor{keywordflow}{if} ( d3 /= invalid ) \textcolor{keywordflow}{then}
528         result = d3
529         specified = .true.
530 \textcolor{keywordflow}{      endif}
531 \textcolor{keywordflow}{    end if}
532     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(d4) .and. .not. specified ) \textcolor{keywordflow}{then}
533       \textcolor{keywordflow}{if} ( d4 /= invalid ) \textcolor{keywordflow}{then}
534         result = d4
535         specified = .true.
536 \textcolor{keywordflow}{      endif}
537 \textcolor{keywordflow}{    end if}
538     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(d5) .and. .not. specified ) \textcolor{keywordflow}{then}
539       \textcolor{keywordflow}{if} ( d5 /= invalid ) \textcolor{keywordflow}{then}
540         result = d5
541         specified = .true.
542 \textcolor{keywordflow}{      endif}
543 \textcolor{keywordflow}{    end if}
544     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(d6) .and. .not. specified ) \textcolor{keywordflow}{then}
545       \textcolor{keywordflow}{if} ( d6 /= invalid ) \textcolor{keywordflow}{then}
546         result = d6
547         specified = .true.
548 \textcolor{keywordflow}{      endif}
549 \textcolor{keywordflow}{    end if}
550     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(d7) .and. .not. specified ) \textcolor{keywordflow}{then}
551       \textcolor{keywordflow}{if} ( d7 /= invalid ) \textcolor{keywordflow}{then}
552         result = d7
553         specified = .true.
554 \textcolor{keywordflow}{      endif}
555 \textcolor{keywordflow}{    end if}
556     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(d8) .and. .not. specified ) \textcolor{keywordflow}{then}
557       \textcolor{keywordflow}{if} ( d8 /= invalid ) \textcolor{keywordflow}{then}
558         result = d8
559         specified = .true.
560 \textcolor{keywordflow}{      endif}
561 \textcolor{keywordflow}{    end if}
562     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(d9) .and. .not. specified ) \textcolor{keywordflow}{then}
563       \textcolor{keywordflow}{if} ( d9 /= invalid ) \textcolor{keywordflow}{then}
564         result = d9
565         specified = .true.
566 \textcolor{keywordflow}{      endif}
567 \textcolor{keywordflow}{    end if}
568 
569     \textcolor{keywordflow}{if} (.not. specified) \textcolor{keywordflow}{then}
570       result = \hyperlink{namespacegtool__history__internal_aa7fc82d2ca1961a254be1acb599afbb1}{default}
571 \textcolor{keywordflow}{    end if}
572 
573 \textcolor{comment}{!!$    call EndSub(subname, "result=%d", &}
574 \textcolor{comment}{!!$      &      i=(/result/))}
575 
\end{DoxyCode}
\mbox{\Hypertarget{namespacedc__present_a3192e2ceae053254a5d9002519ed98b5}\label{namespacedc__present_a3192e2ceae053254a5d9002519ed98b5}} 
\index{dc\+\_\+present@{dc\+\_\+present}!present\+\_\+select\+\_\+int\+\_\+auto@{present\+\_\+select\+\_\+int\+\_\+auto}}
\index{present\+\_\+select\+\_\+int\+\_\+auto@{present\+\_\+select\+\_\+int\+\_\+auto}!dc\+\_\+present@{dc\+\_\+present}}
\subsubsection{\texorpdfstring{present\+\_\+select\+\_\+int\+\_\+auto()}{present\_select\_int\_auto()}}
{\footnotesize\ttfamily integer function dc\+\_\+present\+::present\+\_\+select\+\_\+int\+\_\+auto (\begin{DoxyParamCaption}\item[{logical, intent(in)}]{invalid,  }\item[{integer, intent(in)}]{default,  }\item[{integer, intent(in), optional}]{d0,  }\item[{integer, intent(in), optional}]{d1,  }\item[{integer, intent(in), optional}]{d2,  }\item[{integer, intent(in), optional}]{d3,  }\item[{integer, intent(in), optional}]{d4,  }\item[{integer, intent(in), optional}]{d5,  }\item[{integer, intent(in), optional}]{d6,  }\item[{integer, intent(in), optional}]{d7,  }\item[{integer, intent(in), optional}]{d8,  }\item[{integer, intent(in), optional}]{d9 }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 948 of file dc\+\_\+present.\+f90.


\begin{DoxyCode}
948     \textcolor{comment}{!}
949     \textcolor{comment}{! invalid に <tt>.false.</tt> を与えた場合、省略可能な引数}
950     \textcolor{comment}{! d0 〜 d9 のうち、}
951     \textcolor{comment}{! 省略されておらず且つ優先順位が最も高いものを}
952     \textcolor{comment}{! 1 つ返します。優先順位が最も高いのは d0 で、}
953     \textcolor{comment}{! 最も低いのは d9 です。}
954     \textcolor{comment}{!}
955     \textcolor{comment}{! invarlid が .true. の場合は、}
956     \textcolor{comment}{! 0 は省略されている}
957     \textcolor{comment}{! のと同様に扱われ、優先順位に関わらず無視されます。}
958     \textcolor{comment}{! 与えられた引数の全てが 0 の場合は default が返ります。}
959     \textcolor{comment}{!}
960     \textcolor{keywordtype}{implicit none}
961     \textcolor{keywordtype}{logical}          ,\textcolor{keywordtype}{intent(in)}          :: invalid
962     \textcolor{keywordtype}{integer}     ,\textcolor{keywordtype}{intent(in)}          :: \hyperlink{namespacegtool__history__internal_aa7fc82d2ca1961a254be1acb599afbb1}{default}
963     \textcolor{keywordtype}{integer}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: d0
964     \textcolor{keywordtype}{integer}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: d1
965     \textcolor{keywordtype}{integer}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: d2
966     \textcolor{keywordtype}{integer}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: d3
967     \textcolor{keywordtype}{integer}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: d4
968     \textcolor{keywordtype}{integer}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: d5
969     \textcolor{keywordtype}{integer}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: d6
970     \textcolor{keywordtype}{integer}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: d7
971     \textcolor{keywordtype}{integer}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: d8
972     \textcolor{keywordtype}{integer}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: d9
973     \textcolor{keywordtype}{integer}                         :: result
974 
975     \textcolor{comment}{!=== Variables for internal work}
976     \textcolor{keywordtype}{logical}                 :: specified
977     \textcolor{keywordtype}{character(*)},  \textcolor{keywordtype}{parameter}:: subname = \textcolor{stringliteral}{"present\_select\_Int\_auto"}
978   \textcolor{keywordflow}{continue}
979 
980 \textcolor{comment}{!!$    call BeginSub(subname, &}
981 \textcolor{comment}{!!$      &        'invalid=%y default=%d',  &}
982 \textcolor{comment}{!!$      &        l=(/invalid/), i=(/default/))}
983     specified = .false.
984 
985     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(d0) ) \textcolor{keywordflow}{then}
986        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
987           result = d0
988           specified = .true.
989        \textcolor{keywordflow}{elseif} ( d0 /= 0 ) \textcolor{keywordflow}{then}
990           result = d0
991           specified = .true.
992 \textcolor{keywordflow}{       endif}
993 \textcolor{keywordflow}{    end if}
994 
995     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(d1) .and. .not. specified ) \textcolor{keywordflow}{then}
996        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
997           result = d1
998           specified = .true.
999        \textcolor{keywordflow}{elseif} ( d1 /= 0 ) \textcolor{keywordflow}{then}
1000           result = d1
1001           specified = .true.
1002 \textcolor{keywordflow}{       endif}
1003 \textcolor{keywordflow}{    end if}
1004     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(d2) .and. .not. specified ) \textcolor{keywordflow}{then}
1005        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
1006           result = d2
1007           specified = .true.
1008        \textcolor{keywordflow}{elseif} ( d2 /= 0 ) \textcolor{keywordflow}{then}
1009           result = d2
1010           specified = .true.
1011 \textcolor{keywordflow}{       endif}
1012 \textcolor{keywordflow}{    end if}
1013     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(d3) .and. .not. specified ) \textcolor{keywordflow}{then}
1014        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
1015           result = d3
1016           specified = .true.
1017        \textcolor{keywordflow}{elseif} ( d3 /= 0 ) \textcolor{keywordflow}{then}
1018           result = d3
1019           specified = .true.
1020 \textcolor{keywordflow}{       endif}
1021 \textcolor{keywordflow}{    end if}
1022     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(d4) .and. .not. specified ) \textcolor{keywordflow}{then}
1023        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
1024           result = d4
1025           specified = .true.
1026        \textcolor{keywordflow}{elseif} ( d4 /= 0 ) \textcolor{keywordflow}{then}
1027           result = d4
1028           specified = .true.
1029 \textcolor{keywordflow}{       endif}
1030 \textcolor{keywordflow}{    end if}
1031     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(d5) .and. .not. specified ) \textcolor{keywordflow}{then}
1032        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
1033           result = d5
1034           specified = .true.
1035        \textcolor{keywordflow}{elseif} ( d5 /= 0 ) \textcolor{keywordflow}{then}
1036           result = d5
1037           specified = .true.
1038 \textcolor{keywordflow}{       endif}
1039 \textcolor{keywordflow}{    end if}
1040     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(d6) .and. .not. specified ) \textcolor{keywordflow}{then}
1041        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
1042           result = d6
1043           specified = .true.
1044        \textcolor{keywordflow}{elseif} ( d6 /= 0 ) \textcolor{keywordflow}{then}
1045           result = d6
1046           specified = .true.
1047 \textcolor{keywordflow}{       endif}
1048 \textcolor{keywordflow}{    end if}
1049     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(d7) .and. .not. specified ) \textcolor{keywordflow}{then}
1050        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
1051           result = d7
1052           specified = .true.
1053        \textcolor{keywordflow}{elseif} ( d7 /= 0 ) \textcolor{keywordflow}{then}
1054           result = d7
1055           specified = .true.
1056 \textcolor{keywordflow}{       endif}
1057 \textcolor{keywordflow}{    end if}
1058     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(d8) .and. .not. specified ) \textcolor{keywordflow}{then}
1059        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
1060           result = d8
1061           specified = .true.
1062        \textcolor{keywordflow}{elseif} ( d8 /= 0 ) \textcolor{keywordflow}{then}
1063           result = d8
1064           specified = .true.
1065 \textcolor{keywordflow}{       endif}
1066 \textcolor{keywordflow}{    end if}
1067     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(d9) .and. .not. specified ) \textcolor{keywordflow}{then}
1068        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
1069           result = d9
1070           specified = .true.
1071        \textcolor{keywordflow}{elseif} ( d9 /= 0 ) \textcolor{keywordflow}{then}
1072           result = d9
1073           specified = .true.
1074 \textcolor{keywordflow}{       endif}
1075 \textcolor{keywordflow}{    end if}
1076 
1077     \textcolor{keywordflow}{if} (.not. specified) \textcolor{keywordflow}{then}
1078        result = \hyperlink{namespacegtool__history__internal_aa7fc82d2ca1961a254be1acb599afbb1}{default}
1079 \textcolor{keywordflow}{    end if}
1080 
1081 \textcolor{comment}{!!$    call EndSub(subname, "result=%d", &}
1082 \textcolor{comment}{!!$      &      i=(/result/))}
1083 
\end{DoxyCode}
\mbox{\Hypertarget{namespacedc__present_a518658802b964ffc26cdfcdc080c4c9e}\label{namespacedc__present_a518658802b964ffc26cdfcdc080c4c9e}} 
\index{dc\+\_\+present@{dc\+\_\+present}!present\+\_\+select\+\_\+real@{present\+\_\+select\+\_\+real}}
\index{present\+\_\+select\+\_\+real@{present\+\_\+select\+\_\+real}!dc\+\_\+present@{dc\+\_\+present}}
\subsubsection{\texorpdfstring{present\+\_\+select\+\_\+real()}{present\_select\_real()}}
{\footnotesize\ttfamily real function dc\+\_\+present\+::present\+\_\+select\+\_\+real (\begin{DoxyParamCaption}\item[{real, intent(in)}]{invalid,  }\item[{real, intent(in)}]{default,  }\item[{real, intent(in), optional}]{r0,  }\item[{real, intent(in), optional}]{r1,  }\item[{real, intent(in), optional}]{r2,  }\item[{real, intent(in), optional}]{r3,  }\item[{real, intent(in), optional}]{r4,  }\item[{real, intent(in), optional}]{r5,  }\item[{real, intent(in), optional}]{r6,  }\item[{real, intent(in), optional}]{r7,  }\item[{real, intent(in), optional}]{r8,  }\item[{real, intent(in), optional}]{r9 }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 592 of file dc\+\_\+present.\+f90.


\begin{DoxyCode}
592     \textcolor{comment}{!}
593     \textcolor{comment}{! 省略可能な引数 r0 〜 r9 のうち、}
594     \textcolor{comment}{! 省略されておらず、且つ invalid と等しくないものを 1 つ返します。}
595     \textcolor{comment}{! 優先順位が最も高いものは r0 で、}
596     \textcolor{comment}{! 最も低いのは r9 です。}
597     \textcolor{comment}{! r0 〜 r9 の全てが省略されているか}
598     \textcolor{comment}{! もしくは invalid と同様な場合は default が返ります。}
599     \textcolor{comment}{!}
600     \textcolor{keywordtype}{implicit none}
601     \textcolor{keywordtype}{real}     ,\textcolor{keywordtype}{intent(in)}          :: invalid
602     \textcolor{keywordtype}{real}     ,\textcolor{keywordtype}{intent(in)}          :: \hyperlink{namespacegtool__history__internal_aa7fc82d2ca1961a254be1acb599afbb1}{default}
603     \textcolor{keywordtype}{real}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: r0
604     \textcolor{keywordtype}{real}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: r1
605     \textcolor{keywordtype}{real}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: r2
606     \textcolor{keywordtype}{real}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: r3
607     \textcolor{keywordtype}{real}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: r4
608     \textcolor{keywordtype}{real}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: r5
609     \textcolor{keywordtype}{real}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: r6
610     \textcolor{keywordtype}{real}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: r7
611     \textcolor{keywordtype}{real}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: r8
612     \textcolor{keywordtype}{real}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: r9
613     \textcolor{keywordtype}{real}                         :: result
614 
615     \textcolor{comment}{!=== Variables for internal work}
616     \textcolor{keywordtype}{logical}                 :: specified
617     \textcolor{keywordtype}{character(*)},  \textcolor{keywordtype}{parameter}:: subname = \textcolor{stringliteral}{'present\_select\_Real'}
618   \textcolor{keywordflow}{continue}
619 
620 \textcolor{comment}{!!$    call BeginSub(subname, &}
621 \textcolor{comment}{!!$      &        'invalid=%r default=%r',  &}
622 \textcolor{comment}{!!$      &        r=(/invalid, default/))}
623     specified = .false.
624 
625     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(r0) ) \textcolor{keywordflow}{then}
626       \textcolor{keywordflow}{if} ( r0 /= invalid ) \textcolor{keywordflow}{then}
627         result = r0
628         specified = .true.
629 \textcolor{keywordflow}{      endif}
630 \textcolor{keywordflow}{    end if}
631 
632     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(r1) .and. .not. specified ) \textcolor{keywordflow}{then}
633       \textcolor{keywordflow}{if} ( r1 /= invalid ) \textcolor{keywordflow}{then}
634         result = r1
635         specified = .true.
636 \textcolor{keywordflow}{      endif}
637 \textcolor{keywordflow}{    end if}
638     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(r2) .and. .not. specified ) \textcolor{keywordflow}{then}
639       \textcolor{keywordflow}{if} ( r2 /= invalid ) \textcolor{keywordflow}{then}
640         result = r2
641         specified = .true.
642 \textcolor{keywordflow}{      endif}
643 \textcolor{keywordflow}{    end if}
644     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(r3) .and. .not. specified ) \textcolor{keywordflow}{then}
645       \textcolor{keywordflow}{if} ( r3 /= invalid ) \textcolor{keywordflow}{then}
646         result = r3
647         specified = .true.
648 \textcolor{keywordflow}{      endif}
649 \textcolor{keywordflow}{    end if}
650     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(r4) .and. .not. specified ) \textcolor{keywordflow}{then}
651       \textcolor{keywordflow}{if} ( r4 /= invalid ) \textcolor{keywordflow}{then}
652         result = r4
653         specified = .true.
654 \textcolor{keywordflow}{      endif}
655 \textcolor{keywordflow}{    end if}
656     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(r5) .and. .not. specified ) \textcolor{keywordflow}{then}
657       \textcolor{keywordflow}{if} ( r5 /= invalid ) \textcolor{keywordflow}{then}
658         result = r5
659         specified = .true.
660 \textcolor{keywordflow}{      endif}
661 \textcolor{keywordflow}{    end if}
662     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(r6) .and. .not. specified ) \textcolor{keywordflow}{then}
663       \textcolor{keywordflow}{if} ( r6 /= invalid ) \textcolor{keywordflow}{then}
664         result = r6
665         specified = .true.
666 \textcolor{keywordflow}{      endif}
667 \textcolor{keywordflow}{    end if}
668     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(r7) .and. .not. specified ) \textcolor{keywordflow}{then}
669       \textcolor{keywordflow}{if} ( r7 /= invalid ) \textcolor{keywordflow}{then}
670         result = r7
671         specified = .true.
672 \textcolor{keywordflow}{      endif}
673 \textcolor{keywordflow}{    end if}
674     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(r8) .and. .not. specified ) \textcolor{keywordflow}{then}
675       \textcolor{keywordflow}{if} ( r8 /= invalid ) \textcolor{keywordflow}{then}
676         result = r8
677         specified = .true.
678 \textcolor{keywordflow}{      endif}
679 \textcolor{keywordflow}{    end if}
680     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(r9) .and. .not. specified ) \textcolor{keywordflow}{then}
681       \textcolor{keywordflow}{if} ( r9 /= invalid ) \textcolor{keywordflow}{then}
682         result = r9
683         specified = .true.
684 \textcolor{keywordflow}{      endif}
685 \textcolor{keywordflow}{    end if}
686 
687     \textcolor{keywordflow}{if} (.not. specified) \textcolor{keywordflow}{then}
688       result = \hyperlink{namespacegtool__history__internal_aa7fc82d2ca1961a254be1acb599afbb1}{default}
689 \textcolor{keywordflow}{    end if}
690 
691 \textcolor{comment}{!!$    call EndSub(subname, "result=%r", &}
692 \textcolor{comment}{!!$      &      r=(/result/))}
693 
\end{DoxyCode}
\mbox{\Hypertarget{namespacedc__present_a9ca8a8c464dbcd604ac9325fe475e2de}\label{namespacedc__present_a9ca8a8c464dbcd604ac9325fe475e2de}} 
\index{dc\+\_\+present@{dc\+\_\+present}!present\+\_\+select\+\_\+real\+\_\+auto@{present\+\_\+select\+\_\+real\+\_\+auto}}
\index{present\+\_\+select\+\_\+real\+\_\+auto@{present\+\_\+select\+\_\+real\+\_\+auto}!dc\+\_\+present@{dc\+\_\+present}}
\subsubsection{\texorpdfstring{present\+\_\+select\+\_\+real\+\_\+auto()}{present\_select\_real\_auto()}}
{\footnotesize\ttfamily real function dc\+\_\+present\+::present\+\_\+select\+\_\+real\+\_\+auto (\begin{DoxyParamCaption}\item[{logical, intent(in)}]{invalid,  }\item[{real, intent(in)}]{default,  }\item[{real, intent(in), optional}]{r0,  }\item[{real, intent(in), optional}]{r1,  }\item[{real, intent(in), optional}]{r2,  }\item[{real, intent(in), optional}]{r3,  }\item[{real, intent(in), optional}]{r4,  }\item[{real, intent(in), optional}]{r5,  }\item[{real, intent(in), optional}]{r6,  }\item[{real, intent(in), optional}]{r7,  }\item[{real, intent(in), optional}]{r8,  }\item[{real, intent(in), optional}]{r9 }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Definition at line 1100 of file dc\+\_\+present.\+f90.


\begin{DoxyCode}
1100     \textcolor{comment}{!}
1101     \textcolor{comment}{! invalid に <tt>.false.</tt> を与えた場合、省略可能な引数}
1102     \textcolor{comment}{! r0 〜 r9 のうち、}
1103     \textcolor{comment}{! 省略されておらず且つ優先順位が最も高いものを}
1104     \textcolor{comment}{! 1 つ返します。優先順位が最も高いのは r0 で、}
1105     \textcolor{comment}{! 最も低いのは r9 です。}
1106     \textcolor{comment}{!}
1107     \textcolor{comment}{! invarlid が .true. の場合は、}
1108     \textcolor{comment}{! 0 は省略されている}
1109     \textcolor{comment}{! のと同様に扱われ、優先順位に関わらず無視されます。}
1110     \textcolor{comment}{! 与えられた引数の全てが 0 の場合は default が返ります。}
1111     \textcolor{comment}{!}
1112     \textcolor{keywordtype}{implicit none}
1113     \textcolor{keywordtype}{logical}          ,\textcolor{keywordtype}{intent(in)}          :: invalid
1114     \textcolor{keywordtype}{real}     ,\textcolor{keywordtype}{intent(in)}          :: \hyperlink{namespacegtool__history__internal_aa7fc82d2ca1961a254be1acb599afbb1}{default}
1115     \textcolor{keywordtype}{real}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: r0
1116     \textcolor{keywordtype}{real}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: r1
1117     \textcolor{keywordtype}{real}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: r2
1118     \textcolor{keywordtype}{real}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: r3
1119     \textcolor{keywordtype}{real}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: r4
1120     \textcolor{keywordtype}{real}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: r5
1121     \textcolor{keywordtype}{real}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: r6
1122     \textcolor{keywordtype}{real}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: r7
1123     \textcolor{keywordtype}{real}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: r8
1124     \textcolor{keywordtype}{real}     ,\textcolor{keywordtype}{intent(in)},\textcolor{keywordtype}{optional} :: r9
1125     \textcolor{keywordtype}{real}                         :: result
1126 
1127     \textcolor{comment}{!=== Variables for internal work}
1128     \textcolor{keywordtype}{logical}                 :: specified
1129     \textcolor{keywordtype}{character(*)},  \textcolor{keywordtype}{parameter}:: subname = \textcolor{stringliteral}{"present\_select\_Real\_auto"}
1130   \textcolor{keywordflow}{continue}
1131 
1132 \textcolor{comment}{!!$    call BeginSub(subname, &}
1133 \textcolor{comment}{!!$      &        'invalid=%y default=%r',  &}
1134 \textcolor{comment}{!!$      &        l=(/invalid/), r=(/default/))}
1135     specified = .false.
1136 
1137     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(r0) ) \textcolor{keywordflow}{then}
1138        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
1139           result = r0
1140           specified = .true.
1141        \textcolor{keywordflow}{elseif} ( r0 /= 0.0 ) \textcolor{keywordflow}{then}
1142           result = r0
1143           specified = .true.
1144 \textcolor{keywordflow}{       endif}
1145 \textcolor{keywordflow}{    end if}
1146 
1147     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(r1) .and. .not. specified ) \textcolor{keywordflow}{then}
1148        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
1149           result = r1
1150           specified = .true.
1151        \textcolor{keywordflow}{elseif} ( r1 /= 0.0 ) \textcolor{keywordflow}{then}
1152           result = r1
1153           specified = .true.
1154 \textcolor{keywordflow}{       endif}
1155 \textcolor{keywordflow}{    end if}
1156     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(r2) .and. .not. specified ) \textcolor{keywordflow}{then}
1157        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
1158           result = r2
1159           specified = .true.
1160        \textcolor{keywordflow}{elseif} ( r2 /= 0.0 ) \textcolor{keywordflow}{then}
1161           result = r2
1162           specified = .true.
1163 \textcolor{keywordflow}{       endif}
1164 \textcolor{keywordflow}{    end if}
1165     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(r3) .and. .not. specified ) \textcolor{keywordflow}{then}
1166        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
1167           result = r3
1168           specified = .true.
1169        \textcolor{keywordflow}{elseif} ( r3 /= 0.0 ) \textcolor{keywordflow}{then}
1170           result = r3
1171           specified = .true.
1172 \textcolor{keywordflow}{       endif}
1173 \textcolor{keywordflow}{    end if}
1174     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(r4) .and. .not. specified ) \textcolor{keywordflow}{then}
1175        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
1176           result = r4
1177           specified = .true.
1178        \textcolor{keywordflow}{elseif} ( r4 /= 0.0 ) \textcolor{keywordflow}{then}
1179           result = r4
1180           specified = .true.
1181 \textcolor{keywordflow}{       endif}
1182 \textcolor{keywordflow}{    end if}
1183     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(r5) .and. .not. specified ) \textcolor{keywordflow}{then}
1184        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
1185           result = r5
1186           specified = .true.
1187        \textcolor{keywordflow}{elseif} ( r5 /= 0.0 ) \textcolor{keywordflow}{then}
1188           result = r5
1189           specified = .true.
1190 \textcolor{keywordflow}{       endif}
1191 \textcolor{keywordflow}{    end if}
1192     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(r6) .and. .not. specified ) \textcolor{keywordflow}{then}
1193        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
1194           result = r6
1195           specified = .true.
1196        \textcolor{keywordflow}{elseif} ( r6 /= 0.0 ) \textcolor{keywordflow}{then}
1197           result = r6
1198           specified = .true.
1199 \textcolor{keywordflow}{       endif}
1200 \textcolor{keywordflow}{    end if}
1201     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(r7) .and. .not. specified ) \textcolor{keywordflow}{then}
1202        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
1203           result = r7
1204           specified = .true.
1205        \textcolor{keywordflow}{elseif} ( r7 /= 0.0 ) \textcolor{keywordflow}{then}
1206           result = r7
1207           specified = .true.
1208 \textcolor{keywordflow}{       endif}
1209 \textcolor{keywordflow}{    end if}
1210     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(r8) .and. .not. specified ) \textcolor{keywordflow}{then}
1211        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
1212           result = r8
1213           specified = .true.
1214        \textcolor{keywordflow}{elseif} ( r8 /= 0.0 ) \textcolor{keywordflow}{then}
1215           result = r8
1216           specified = .true.
1217 \textcolor{keywordflow}{       endif}
1218 \textcolor{keywordflow}{    end if}
1219     \textcolor{keywordflow}{if} ( \textcolor{keyword}{present}(r9) .and. .not. specified ) \textcolor{keywordflow}{then}
1220        \textcolor{keywordflow}{if} ( .not. invalid ) \textcolor{keywordflow}{then}
1221           result = r9
1222           specified = .true.
1223        \textcolor{keywordflow}{elseif} ( r9 /= 0.0 ) \textcolor{keywordflow}{then}
1224           result = r9
1225           specified = .true.
1226 \textcolor{keywordflow}{       endif}
1227 \textcolor{keywordflow}{    end if}
1228 
1229     \textcolor{keywordflow}{if} (.not. specified) \textcolor{keywordflow}{then}
1230        result = \hyperlink{namespacegtool__history__internal_aa7fc82d2ca1961a254be1acb599afbb1}{default}
1231 \textcolor{keywordflow}{    end if}
1232 
1233 \textcolor{comment}{!!$    call EndSub(subname, "result=%r", &}
1234 \textcolor{comment}{!!$      &      r=(/result/))}
1235 
\end{DoxyCode}
