ruby-changes:19498
From: drbrain <ko1@a...>
Date: Fri, 13 May 2011 07:22:09 +0900 (JST)
Subject: [ruby-changes:19498] drbrain:r31538 (trunk): * lib/mathn.rb: Add documentation. Patch by Jason Dew. [Ruby 1.9 -
drbrain 2011-05-13 06:51:41 +0900 (Fri, 13 May 2011) New Revision: 31538 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=31538 Log: * lib/mathn.rb: Add documentation. Patch by Jason Dew. [Ruby 1.9 - Feature #4667] Modified files: trunk/ChangeLog trunk/lib/mathn.rb Index: ChangeLog =================================================================== --- ChangeLog (revision 31537) +++ ChangeLog (revision 31538) @@ -1,3 +1,8 @@ +Fri May 13 06:50:43 2011 Eric Hodel <drbrain@s...> + + * lib/mathn.rb: Add documentation. Patch by Jason Dew. [Ruby 1.9 - + Feature #4667] + Fri May 13 05:44:19 2011 Eric Hodel <drbrain@s...> * lib/logger.rb (class Logger): Document Logger#datetime_format. Index: lib/mathn.rb =================================================================== --- lib/mathn.rb (revision 31537) +++ lib/mathn.rb (revision 31538) @@ -1,13 +1,27 @@ +## +# = mathn # -# mathn.rb - -# $Release Version: 0.5 $ -# $Revision: 1.1.1.1.4.1 $ -# by Keiju ISHITSUKA(SHL Japan Inc.) +# mathn is a library for changing the way Ruby does math. # -# -- +# == Usage # +# To start using this library, simply: # +# require "mathn" # +# This will change the way division works for Fixnums, specifically +# +# 3 / 2 +# +# will return (3/2) instead of the usual 1. +# +# == Copyright +# +# Author: Keiju ISHITSUKA(SHL Japan Inc.) +# +# -- +# $Release Version: 0.5 $ +# $Revision: 1.1.1.1.4.1 $ require "cmath.rb" require "matrix.rb" @@ -27,6 +41,8 @@ alias power! ** unless method_defined? :power! + ## + # exponentiate by +other+ def ** (other) if self < 0 && other.round != other Complex(self, 0.0) ** other @@ -43,6 +59,8 @@ alias power! ** unless method_defined? :power! + ## + # exponentiate by +other+ def ** (other) if self < 0 && other.round != other Complex(self, 0.0) ** other @@ -119,6 +137,9 @@ module Math remove_method(:sqrt) + + ## + # compute the square root of +a+ def sqrt(a) if a.kind_of?(Complex) abs = sqrt(a.real*a.real + a.imag*a.imag) @@ -144,7 +165,7 @@ end end - def rsqrt(a) + def rsqrt(a) # :nodoc: if a.kind_of?(Float) sqrt!(a) elsif a.kind_of?(Rational) @@ -199,6 +220,8 @@ class Float alias power! ** + ## + # exponentiate by +other+ def ** (other) if self < 0 && other.round != other Complex(self, 0.0) ** other -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/