summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornagachika <nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-03-24 17:02:39 +0000
committernagachika <nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-03-24 17:02:39 +0000
commit8f96c404824edf2013c4377ee041e0800283307b (patch)
tree2908118f5fa5b690013ab945ef02c2ec19b7611d
parent0d7d3a80dd2e64951297b3122d5055fc1ff40091 (diff)
merge revision(s) 39677,39695: [Backport #8068]
* complex.c: described syntax of string form. * rational.c: ditto. * complex.c: edited rdoc. * rational.c: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@39918 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog10
-rw-r--r--complex.c24
-rw-r--r--rational.c18
-rw-r--r--version.h2
4 files changed, 53 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index acc3fa8d95..f051db6c14 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -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]
diff --git a/complex.c b/complex.c
index edbe2965f0..f6f63f6ebd 100644
--- a/complex.c
+++ b/complex.c
@@ -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)
diff --git a/version.h b/version.h
index c64afb2f86..38a47ccacc 100644
--- a/version.h
+++ b/version.h
@@ -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