From 23d35b21edbdd055f252aaedfea5e0a05bb8b8d9 Mon Sep 17 00:00:00 2001 From: akr Date: Thu, 14 Sep 2006 05:39:40 +0000 Subject: * ext/digest/lib/digest.rb (Digest::Base.file): new method. [ruby-dev:29572] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@10928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ ext/digest/lib/digest.rb | 13 +++++++++++++ 2 files changed, 18 insertions(+) diff --git a/ChangeLog b/ChangeLog index c0b9ae662..d604b1fa0 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Thu Sep 14 14:37:45 2006 Tanaka Akira + + * ext/digest/lib/digest.rb (Digest::Base.file): new method. + [ruby-dev:29572] + Thu Sep 14 08:30:02 2006 Tanaka Akira * ext/digest/digest.c (rb_digest_base_inspect): new method. diff --git a/ext/digest/lib/digest.rb b/ext/digest/lib/digest.rb index b550f94c3..7703faa8e 100644 --- a/ext/digest/lib/digest.rb +++ b/ext/digest/lib/digest.rb @@ -5,4 +5,17 @@ module Digest autoload "SHA256", "digest/sha2" autoload "SHA384", "digest/sha2" autoload "SHA512", "digest/sha2" + + class Base + def self.file(name) + digest = self.new + File.open(name) {|f| + buf = "" + while f.read(16384, buf) + digest.update buf + end + } + digest + end + end end -- cgit