Never been to DZone Snippets before?

Snippets is a public source code repository. Easily build up your personal collection of code snippets, categorize them with tags / keywords, and share them with the world

« Newer Snippets
Older Snippets »
Showing 1-1 of 1 total  RSS 

Extend Float and FixNum to do calculations in S.I. units

Found at http://stephan.walter.name/Ruby_snippets

module SiUnits
        def mega;  self * 1000.kilo;   end
        def kilo;  self * 1000;        end
        def milli; self * 0.001;       end
        def micro; self * 0.001.milli; end

        def seconds; self;              end
        def minutes; self * 60;         end
        def hours;   self * 60.minutes; end
        def days;    self * 24.hours;   end
        def years;   self * 365.days;   end

        def metres; self; end

        def grams; self * 0.001; end
end

class Float; include SiUnits; end
class Fixnum; include SiUnits; end

p 2.days             # => 172800
p 3.milli.metres     # => 0.003
p 4.kilo.grams       # => 4.0


Note: This code is under the Creative Commons Attribution-NonCommercial-ShareAlike License.
« Newer Snippets
Older Snippets »
Showing 1-1 of 1 total  RSS