DevHeads.net

units-time library / gem v1.0 - units of time (in epoch time) for secure ruby (sruby)

Hello,

I've put together a "standalone" library / gem for
units of time (in epoch time) incl. seconds, minutes, hours, days, weeks,
fortnights, years and more.

The units-time library / gem [1] includes two new types too, that is,
Timestamp and Timedelta.

You can add and subtract durations from Timestamp or Timedelta objects.
Example:

Timestamp.now + 2.hours #=> <Timestamp seconds= >
1.week + 1.day #=> <Timedelta seconds= >
2.minutes - 1.second #=> <TimeDelta seconds= >

Note: You CANNOT add or subtract integers to `Timestamp` or
`Timedelta` objects and vice versa.

# Bad
10 + 1.minute #=> Boom! <TypeError>
1.minute + 10 #=> Boom! <TypeError>

# Good
10.seconds + 1.minute #=> <Timedelta seconds=70>
1.minute.to_i + 10 #=> Integer

Note: Multiply an integer with `1.hour` or `1.minute` or `1.second` and so on
to convert to a time unit.

100*1.hour #=> <Timedelta seconds=360_000>

Happy coding with (secure) ruby. Cheers. Prost.

PS: The new units-time 1.0 library is part of the safe data structures
series. [2]

[1] <a href="https://github.com/s6ruby/units-time" title="https://github.com/s6ruby/units-time">https://github.com/s6ruby/units-time</a>
[2] <a href="https://github.com/s6ruby/safestruct" title="https://github.com/s6ruby/safestruct">https://github.com/s6ruby/safestruct</a>

Unsubscribe: <mailto:ruby-talk-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk>