class MicroMoney < Money # Forces the :units => :millicents option. def initialize_with_millicents(money, *args) options = args.last.is_a?(Hash) ? args.pop : {} options.merge!(:units => :millicents) initialize_without_millicents(money, *(args << options)) end alias :initialize_without_millicents :initialize alias :initialize :initialize_with_millicents ### OUTPUT/CONVERSIONS # Conversion to MicroMoney. def to_micro_money self end # Conversion to Money. def to_money Money.new(millicents, currency, bank, :units => :millicents) end end