[前][次][番号順一覧][スレッド一覧]

ruby-changes:17648

From: knu <ko1@a...>
Date: Mon, 1 Nov 2010 01:04:26 +0900 (JST)
Subject: [ruby-changes:17648] Ruby:r29656 (ruby_1_8): * ext/digest/digest.c (rb_digest_class_init): Define

knu	2010-11-01 01:04:19 +0900 (Mon, 01 Nov 2010)

  New Revision: 29656

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=29656

  Log:
    * ext/digest/digest.c (rb_digest_class_init): Define
      Digest::Class.new(). [Feature #3954]

  Modified files:
    branches/ruby_1_8/ChangeLog
    branches/ruby_1_8/ext/digest/digest.c
    branches/ruby_1_8/test/digest/test_digest.rb

Index: ruby_1_8/ext/digest/digest.c
===================================================================
--- ruby_1_8/ext/digest/digest.c	(revision 29655)
+++ ruby_1_8/ext/digest/digest.c	(revision 29656)
@@ -415,6 +415,13 @@
     return hexencode_str_new(rb_funcall2(klass, id_digest, argc, argv));
 }
 
+/* :nodoc: */
+static VALUE
+rb_digest_class_init(VALUE self)
+{
+    return self;
+}
+
 /*
  * Document-class: Digest::Base
  *
@@ -622,6 +629,7 @@
      * class Digest::Class
      */
     rb_cDigest_Class = rb_define_class_under(rb_mDigest, "Class", rb_cObject);
+    rb_define_method(rb_cDigest_Class, "initialize",  rb_digest_class_init, 0);
     rb_include_module(rb_cDigest_Class, rb_mDigest_Instance);
 
     /* class methods */
Index: ruby_1_8/ChangeLog
===================================================================
--- ruby_1_8/ChangeLog	(revision 29655)
+++ ruby_1_8/ChangeLog	(revision 29656)
@@ -1,3 +1,8 @@
+Mon Nov  1 00:58:00 2010  Akinori MUSHA  <knu@i...>
+
+	* ext/digest/digest.c (rb_digest_class_init): Define
+	  Digest::Class.new(). [Feature #3954]
+
 Sat Oct 30 11:26:07 2010  Marc-Andre Lafortune  <ruby-core@m...>
 
 	* object.c: Make BasicObject.new accept no parameter.
Index: ruby_1_8/test/digest/test_digest.rb
===================================================================
--- ruby_1_8/test/digest/test_digest.rb	(revision 29655)
+++ ruby_1_8/test/digest/test_digest.rb	(revision 29656)
@@ -17,6 +17,12 @@
   Data1 = "abc"
   Data2 = "abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq"
 
+  def test_s_new
+    self.class::DATA.each do |str, hexdigest|
+      assert_raise(ArgumentError) { self.class::ALGO.new("") }
+    end
+  end
+
   def test_s_hexdigest
     self.class::DATA.each do |str, hexdigest|
       assert_equal(hexdigest, self.class::ALGO.hexdigest(str))

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]