gtool5 Fortran 90/95 Library 1.0.0-rc5
日本語
Loading...
Searching...
No Matches
Functions/Subroutines
dcdatetimeparseunits.f90 File Reference

Go to the source code of this file.

Functions/Subroutines

integer function dcdatetimeparseunits (str)
 Parse strings that mean units.
 

Function/Subroutine Documentation

◆ dcdatetimeparseunits()

integer function dcdatetimeparseunits ( character(*), intent(in)  str)

Parse strings that mean units.

Author
Yasuhiro MORIKAWA

Definition at line 94 of file dcdatetimeparseunits.f90.

95
96 use dc_types, only: token
102 use dc_string, only: strieq
103 implicit none
104 character(*), intent(in):: str
105 integer:: symbol
106 integer:: unit_str_size, i
107 character(TOKEN):: unit
108continue
109 unit = adjustl(str)
110 unit_str_size = size(unit_nondim)
111 do i = 1, unit_str_size
112 if (strieq(trim(unit), trim(unit_nondim(i)))) then
113 symbol = unit_symbol_nondim
114 return
115 end if
116 end do
117
118 unit_str_size = size(unit_sec)
119 do i = 1, unit_str_size
120 if (strieq(trim(unit), trim(unit_sec(i)))) then
121 symbol = unit_symbol_sec
122 return
123 end if
124 end do
125
126 unit_str_size = size(unit_min)
127 do i = 1, unit_str_size
128 if (strieq(trim(unit), trim(unit_min(i)))) then
129 symbol = unit_symbol_min
130 return
131 end if
132 end do
133
134 unit_str_size = size(unit_hour)
135 do i = 1, unit_str_size
136 if (strieq(trim(unit), trim(unit_hour(i)))) then
137 symbol = unit_symbol_hour
138 return
139 end if
140 end do
141
142 unit_str_size = size(unit_day)
143 do i = 1, unit_str_size
144 if (strieq(trim(unit), trim(unit_day(i)))) then
145 symbol = unit_symbol_day
146 return
147 end if
148 end do
149
150 unit_str_size = size(unit_month)
151 do i = 1, unit_str_size
152 if (strieq(trim(unit), trim(unit_month(i)))) then
153 symbol = unit_symbol_month
154 return
155 end if
156 end do
157
158 unit_str_size = size(unit_year)
159 do i = 1, unit_str_size
160 if (strieq(trim(unit), trim(unit_year(i)))) then
161 symbol = unit_symbol_year
162 return
163 end if
164 end do
165
166 symbol = unit_symbol_err
167
Derived types and parameters for date and time.
character(*), dimension(6), parameter, public unit_month
Strings recognized as month unit
integer, parameter, public unit_symbol_err
Symbol for invalid unit
integer, parameter, public unit_symbol_hour
Symbol for hour unit
integer, parameter, public unit_symbol_min
Symbol for minute unit
integer, parameter, public unit_symbol_month
Symbol for month unit
character(*), dimension(1), parameter, public unit_nondim
Strings recognized as nondimensional unit
integer, parameter, public unit_symbol_sec
Symbol for second unit
integer, parameter, public unit_symbol_nondim
Symbol for nondimensional unit
character(*), dimension(4), parameter, public unit_day
Strings recognized as day unit
character(*), dimension(8), parameter, public unit_sec
Strings recognized as second unit
character(*), dimension(8), parameter, public unit_hour
Strings recognized as hour unit
integer, parameter, public unit_symbol_day
Symbol for day unit
character(*), dimension(4), parameter, public unit_year
Strings recognized as year unit
integer, parameter, public unit_symbol_year
Symbol for year unit
character(*), dimension(4), parameter, public unit_min
Strings recognized as minute unit
Handling character types.
Definition dc_string.f90:83
Provides kind type parameter values.
Definition dc_types.f90:55
integer, parameter, public token
Character length for word, token
Definition dc_types.f90:128

References dc_types::token, dc_date_types::unit_day, dc_date_types::unit_hour, dc_date_types::unit_min, dc_date_types::unit_month, dc_date_types::unit_nondim, dc_date_types::unit_sec, dc_date_types::unit_symbol_day, dc_date_types::unit_symbol_err, dc_date_types::unit_symbol_hour, dc_date_types::unit_symbol_min, dc_date_types::unit_symbol_month, dc_date_types::unit_symbol_nondim, dc_date_types::unit_symbol_sec, dc_date_types::unit_symbol_year, and dc_date_types::unit_year.