about summary refs log tree commit
path: root/lib/metropolis/multi_hash/digest.rb
diff options
context:
space:
mode:
authorEric Wong <e@yhbt.net>2011-01-17 03:17:28 +0000
committerEric Wong <normalperson@yhbt.net>2011-01-17 09:18:31 +0000
commit2c913347a6e5cc8be776b14e1a177adec0fbd5b6 (patch)
tree8d001fa557ef23c66bc56aa6c2fba943e428382e /lib/metropolis/multi_hash/digest.rb
parent34a18520286313a05edc9a927ac4bed95b05191c (diff)
downloadmetropolis-2c913347a6e5cc8be776b14e1a177adec0fbd5b6.tar.gz
use constants everywhere to reduce GC thrashing
This makes it easier to notice a typo, too.
Diffstat (limited to 'lib/metropolis/multi_hash/digest.rb')
-rw-r--r--lib/metropolis/multi_hash/digest.rb12
1 files changed, 7 insertions, 5 deletions
diff --git a/lib/metropolis/multi_hash/digest.rb b/lib/metropolis/multi_hash/digest.rb
index 974d7ac..56264aa 100644
--- a/lib/metropolis/multi_hash/digest.rb
+++ b/lib/metropolis/multi_hash/digest.rb
@@ -1,23 +1,25 @@
 # -*- encoding: binary -*-
 require 'digest'
 module Metropolis::MultiHash::Digest
+  N = "N"
+
   def digest_sha1(key)
-    ::Digest::SHA1.digest(key)[0,4].unpack("N")[0]
+    ::Digest::SHA1.digest(key)[0,4].unpack(N)[0]
   end
 
   def digest_md5(key)
-    ::Digest::MD5.digest(key)[0,4].unpack("N")[0]
+    ::Digest::MD5.digest(key)[0,4].unpack(N)[0]
   end
 
   def digest_sha256(key)
-    ::Digest::SHA256.digest(key)[0,4].unpack("N")[0]
+    ::Digest::SHA256.digest(key)[0,4].unpack(N)[0]
   end
 
   def digest_sha384(key)
-    ::Digest::SHA384.digest(key)[0,4].unpack("N")[0]
+    ::Digest::SHA384.digest(key)[0,4].unpack(N)[0]
   end
 
   def digest_sha512(key)
-    ::Digest::SHA512.digest(key)[0,4].unpack("N")[0]
+    ::Digest::SHA512.digest(key)[0,4].unpack(N)[0]
   end
 end