class method
self.build
Ruby on Rails 5.2.8.1
Since v5.2.8.1Signature
self.build(value)
Creates a new Duration from a seconds value that is converted to the individual parts:
ActiveSupport::Duration.build(31556952).parts # => {:years=>1} ActiveSupport::Duration.build(2716146).parts # => {:months=>1, :days=>1}
Parameters
-
valuereq
Source
# File activesupport/lib/active_support/duration.rb, line 184
def build(value)
parts = {}
remainder = value.round(9)
PARTS.each do |part|
unless part == :seconds
part_in_seconds = PARTS_IN_SECONDS[part]
parts[part] = remainder.div(part_in_seconds)
remainder %= part_in_seconds
end
end unless value == 0
parts[:seconds] = remainder
new(value, parts)
end
Defined in activesupport/lib/active_support/duration.rb line 184
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActiveSupport::Duration