diff options
-rw-r--r-- | ChangeLog | 10 | ||||
-rw-r--r-- | complex.c | 24 | ||||
-rw-r--r-- | rational.c | 18 | ||||
-rw-r--r-- | version.h | 2 |
4 files changed, 53 insertions, 1 deletions
@@ -1,3 +1,13 @@ +Mon Mar 25 02:02:15 2013 Tadayoshi Funaba <tadf@dotrb.org> + + * complex.c: edited rdoc. + * rational.c: ditto. + +Mon Mar 25 02:02:15 2013 Tadayoshi Funaba <tadf@dotrb.org> + + * complex.c: described syntax of string form. + * rational.c: ditto. + Mon Mar 25 01:26:26 2013 Zachary Scott <zachary@zacharyscott.net> * lib/webrick/httpproxy.rb: Fix typos in HTTPProxyServer [Bug #8013] @@ -483,6 +483,28 @@ f_complex_new2(VALUE klass, VALUE x, VALUE y) * * Complex(1, 2) #=> (1+2i) * Complex('1+2i') #=> (1+2i) + * + * Syntax of string form: + * + * string form = extra spaces , complex , extra spaces ; + * complex = real part | [ sign ] , imaginary part + * | real part , sign , imaginary part + * | rational , "@" , rational ; + * real part = rational ; + * imaginary part = imaginary unit | unsigned rational , imaginary unit ; + * rational = [ sign ] , unsigned rational ; + * unsigned rational = numerator | numerator , "/" , denominator ; + * numerator = integer part | fractional part | integer part , fractional part ; + * denominator = digits ; + * integer part = digits ; + * fractional part = "." , digits , [ ( "e" | "E" ) , [ sign ] , digits ] ; + * imaginary unit = "i" | "I" | "j" | "J" ; + * sign = "-" | "+" ; + * digits = digit , { digit | "_" , digit }; + * digit = "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" ; + * extra spaces = ? \s* ? ; + * + * See String#to_c. */ static VALUE nucomp_f_complex(int argc, VALUE *argv, VALUE klass) @@ -1825,6 +1847,8 @@ string_to_c_strict(VALUE self) * '-0.0-0.0i'.to_c #=> (-0.0-0.0i) * '1/2+3/4i'.to_c #=> ((1/2)+(3/4)*i) * 'ruby'.to_c #=> (0+0i) + * + * See Kernel.Complex. */ static VALUE string_to_c(VALUE self) diff --git a/rational.c b/rational.c index a78b3202ec..e009ff2314 100644 --- a/rational.c +++ b/rational.c @@ -571,6 +571,22 @@ f_rational_new_no_reduce2(VALUE klass, VALUE x, VALUE y) * * Rational(1, 2) #=> (1/2) * Rational('1/2') #=> (1/2) + * + * Syntax of string form: + * + * string form = extra spaces , rational , extra spaces ; + * rational = [ sign ] , unsigned rational ; + * unsigned rational = numerator | numerator , "/" , denominator ; + * numerator = integer part | fractional part | integer part , fractional part ; + * denominator = digits ; + * integer part = digits ; + * fractional part = "." , digits , [ ( "e" | "E" ) , [ sign ] , digits ] ; + * sign = "-" | "+" ; + * digits = digit , { digit | "_" , digit } ; + * digit = "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" ; + * extra spaces = ? \s* ? ; + * + * See String#to_r. */ static VALUE nurat_f_rational(int argc, VALUE *argv, VALUE klass) @@ -2256,6 +2272,8 @@ string_to_r_strict(VALUE self) * '21 june 09'.to_r #=> (21/1) * '21/06/09'.to_r #=> (7/2) * 'bwv 1079'.to_r #=> (0/1) + * + * See Kernel.Rational. */ static VALUE string_to_r(VALUE self) @@ -1,6 +1,6 @@ #define RUBY_VERSION "2.0.0" #define RUBY_RELEASE_DATE "2013-03-25" -#define RUBY_PATCHLEVEL 95 +#define RUBY_PATCHLEVEL 96 #define RUBY_RELEASE_YEAR 2013 #define RUBY_RELEASE_MONTH 3 |