Time.xmlschema: Clarify error and docs
It parses a (date)time, not a date.
This commit is contained in:
parent
da484c3187
commit
fdb31aa7ab
Notes:
git
2020-05-23 09:43:28 +09:00
12
lib/time.rb
12
lib/time.rb
@ -590,12 +590,12 @@ class Time
|
|||||||
end
|
end
|
||||||
|
|
||||||
#
|
#
|
||||||
# Parses +date+ as a dateTime defined by the XML Schema and converts it to
|
# Parses +time+ as a dateTime defined by the XML Schema and converts it to
|
||||||
# a Time object. The format is a restricted version of the format defined
|
# a Time object. The format is a restricted version of the format defined
|
||||||
# by ISO 8601.
|
# by ISO 8601.
|
||||||
#
|
#
|
||||||
# ArgumentError is raised if +date+ is not compliant with the format or if
|
# ArgumentError is raised if +time+ is not compliant with the format or if
|
||||||
# the Time class cannot represent specified date.
|
# the Time class cannot represent the specified time.
|
||||||
#
|
#
|
||||||
# See #xmlschema for more information on this format.
|
# See #xmlschema for more information on this format.
|
||||||
#
|
#
|
||||||
@ -606,14 +606,14 @@ class Time
|
|||||||
#
|
#
|
||||||
# You must require 'time' to use this method.
|
# You must require 'time' to use this method.
|
||||||
#
|
#
|
||||||
def xmlschema(date)
|
def xmlschema(time)
|
||||||
if /\A\s*
|
if /\A\s*
|
||||||
(-?\d+)-(\d\d)-(\d\d)
|
(-?\d+)-(\d\d)-(\d\d)
|
||||||
T
|
T
|
||||||
(\d\d):(\d\d):(\d\d)
|
(\d\d):(\d\d):(\d\d)
|
||||||
(\.\d+)?
|
(\.\d+)?
|
||||||
(Z|[+-]\d\d(?::?\d\d)?)?
|
(Z|[+-]\d\d(?::?\d\d)?)?
|
||||||
\s*\z/ix =~ date
|
\s*\z/ix =~ time
|
||||||
year = $1.to_i
|
year = $1.to_i
|
||||||
mon = $2.to_i
|
mon = $2.to_i
|
||||||
day = $3.to_i
|
day = $3.to_i
|
||||||
@ -636,7 +636,7 @@ class Time
|
|||||||
self.local(year, mon, day, hour, min, sec, usec)
|
self.local(year, mon, day, hour, min, sec, usec)
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
raise ArgumentError.new("invalid date: #{date.inspect}")
|
raise ArgumentError.new("invalid xmlschema format: #{time.inspect}")
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
alias iso8601 xmlschema
|
alias iso8601 xmlschema
|
||||||
|
Loading…
x
Reference in New Issue
Block a user