I've created some utility classes that I use in many of my projects. I've broken them out into a Rails plugin, but they should really be part of ActiveSupport.
First: TimeRange
t = 5.minutes.ago.until(1.second.ago)
s = 10.minutes.ago.until(3.minutes.ago)
overlap = t & s
overlap.start_time # => 5.minutes.ago
overlap.end_time # => 3.minutes.ago
Second: Distance
4.miles + 6.miles # => 10.miles
5.yards.to_feet # => 15.feet
12.miles.in_km # => 19.312128.km
12.miles.as_km # => 19.312128.km
2.meters > 2.yards # => true
Eventually, I plan on moving some of GeoKit into some sort of ActiveRecord::DistanceSupport in the plugin.
If you want the plugin, you can get it at https://svn.u-presence.com/svn/plugins/active_support_hacks/ (Username guest
, no password). I'd love any other suggestions or comments on the utilities.
No comments:
Post a Comment