diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | ext/digest/lib/digest.rb | 13 |
2 files changed, 18 insertions, 0 deletions
@@ -1,3 +1,8 @@ +Thu Sep 14 14:37:45 2006 Tanaka Akira <[email protected]> + + * ext/digest/lib/digest.rb (Digest::Base.file): new method. + [ruby-dev:29572] + Thu Sep 14 08:30:02 2006 Tanaka Akira <[email protected]> * 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 b550f94c3e..7703faa8eb 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 |