class OpenEHR::AssumedLibraryTypes::ISO8601DateTime
Public Class Methods
new(string)
click to toggle source
# File lib/open_ehr/assumed_library_types.rb, line 490 def initialize(string) unless /(\d{4})(?:-(\d{2})(?:-(\d{2}))?)?T(\d{2})(?::(\d{2})(?::(\d{2})(?:(\.|,)(\d+))?)?(Z|([+-]\d{2}):?(\d{2}))?)?/ =~ string raise ArgumentError, 'format invalid' else self.year = $1.to_i end if $2.nil? self.month = nil else self.month = $2.to_i end if $3.nil? self.day = nil else self.day = $3.to_i end if $5.nil? self.minute = nil else self.minute = $5.to_i end if $6.nil? self.second = nil else self.second = $6.to_i end if $4.nil? self.hour = nil else self.hour = $4.to_i end if $8.nil? or $8.empty? self.fractional_second = nil else self.fractional_second = ("0."+$8).to_f end if $9.nil? self.timezone = nil else self.timezone = $9 end end
Public Instance Methods
<=>(other)
click to toggle source
# File lib/open_ehr/assumed_library_types.rb, line 533 def <=>(other) self.magnitude <=> other.magnitude end
Protected Instance Methods
magnitude()
click to toggle source
# File lib/open_ehr/assumed_library_types.rb, line 538 def magnitude return self.to_days*HOURS_IN_DAY*MINUTES_IN_HOUR*SECONDS_IN_MINUTE + self.to_second end