562
563
564
565
566
567
568
569
570
571
572
573
|
# File 'lib/stick/units/base.rb', line 562
def method_missing(m, *args, &blk)
if args.length == 1
args[0] = (Units::Converter.converter(args[0]) rescue nil) if not args[0].is_a? Units::Converter
return self * Units::Value.new(1, Units::Unit.new({m => 1}, args[0])) if args[0] && args[0].registered?(m)
elsif (Units::Converter.current.registered?(m) rescue false)
raise ::ArgumentError, "Wrong number of arguments" if args.length != 0
return self * Units::Value.new(1, Units::Unit.new({m => 1}, Units::Converter.current))
end
::Exception.with_clean_backtrace("method_missing") {
super
}
end
|