15 subroutine dccaldatecreate1( year, month, day, hour, min, sec, date, zone, err )
59 integer,
intent(in):: year
60 integer,
intent(in):: month
61 integer,
intent(in):: day
62 integer,
intent(in):: hour
63 integer,
intent(in):: min
64 real(DP),
intent(in):: sec
65 type(
dc_cal_date),
intent(out),
optional,
target:: date
74 character(*),
intent(in),
optional:: zone
76 logical,
intent(out),
optional:: err
96 integer:: start, length
98 character(STRING):: cause_c
99 character(*),
parameter:: version = &
101 &
'$Id: dccaldatecreate.f90,v 1.3 2010-09-24 07:07:31 morikawa Exp $' 102 character(*),
parameter:: subname =
'DCCalDateCreate1' 111 if (
present( date ) )
then 136 if ( month < 1 )
then 138 call messagenotify(
'W', subname,
'month=<%d> must be natural number', &
145 call messagenotify(
'W', subname,
'day=<%d> must be natural number', &
152 call messagenotify(
'W', subname,
'hour=<%d> must not be negative', &
159 call messagenotify(
'W', subname,
'min=<%d> must not be negative', &
164 if ( sec < 0.0_dp )
then 166 call messagenotify(
'W', subname,
'sec=<%f> must not be negative', &
171 call match(
'^[#+-]#d+:#d+$', zone, &
173 if ( length > 0 )
then 183 datep % month = month
192 datep % initialized = .true.
195 call storeerror( stat, subname, err, cause_c )
254 character(*),
intent(in):: date_str
262 type(
dc_cal_date),
intent(out),
optional,
target:: date
271 logical,
intent(out),
optional:: err
297 character(TOKEN):: zone
300 character(STRING):: cause_c
301 character(*),
parameter:: version = &
303 &
'$Id: dccaldatecreate.f90,v 1.3 2010-09-24 07:07:31 morikawa Exp $' 304 character(*),
parameter:: subname =
'DCCalDateCreate2' 313 if (
present( date ) )
then 332 & year, month, day, hour, min, sec, zone, &
334 if (
present(err) )
then 345 & year, month, day, hour, min, sec, &
346 & datep, zone, err = err )
347 if (
present(err) )
then 359 call storeerror( stat, subname, err, cause_c )
subroutine dccaldatecreate1(year, month, day, hour, min, sec, date, zone, err)
subroutine dccaldatecreate2(date_str, date, err)
integer, parameter, public token
単語やキーワードを保持する文字型変数の種別型パラメタ
integer, parameter, public dc_ebaddate
subroutine, public storeerror(number, where, err, cause_c, cause_i)
integer, parameter, public dc_noerr
シンプルな正規表現関数 'match' を提供します.
type(dc_cal_date), target, save, public default_date
integer, parameter, public dp
倍精度実数型変数
subroutine, public match(pattern, text, start, length)
subroutine, public beginsub(name, fmt, i, r, d, L, n, c1, c2, c3, ca, version)
subroutine, public endsub(name, fmt, i, r, d, L, n, c1, c2, c3, ca)
integer, parameter, public dc_ealreadyinit
integer, parameter, public string
文字列を保持する 文字型変数の種別型パラメタ