summaryrefslogtreecommitdiffstats
path: root/lib/openssl
diff options
context:
space:
mode:
authornobu <nobu@ruby-lang.org>2013-12-10 07:16:03 +0000
committernobu <nobu@ruby-lang.org>2013-12-10 07:16:03 +0000
commita9d18eb9190483b48615b00d4462f54e661d572f (patch)
tree23111a9771876504c7006b16486a853850cda3aa /lib/openssl
parent29d6aa6d6a7fa4902a56f4699d42aa83112afea3 (diff)
downloadruby-openssl-history-a9d18eb9190483b48615b00d4462f54e661d572f.tar.gz
openssl/digest.rb: check by lambda
* ext/openssl/lib/openssl/digest.rb (initialize): check argument size by lambda. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44116 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/openssl')
-rw-r--r--lib/openssl/digest.rb10
1 files changed, 2 insertions, 8 deletions
diff --git a/lib/openssl/digest.rb b/lib/openssl/digest.rb
index 64211cd..a7b641f 100644
--- a/lib/openssl/digest.rb
+++ b/lib/openssl/digest.rb
@@ -42,14 +42,8 @@ module OpenSSL
end
alg.each{|name|
- klass = Class.new(Digest){
- define_method(:initialize){|*data|
- if data.length > 1
- raise ArgumentError,
- "wrong number of arguments (#{data.length} for 1)"
- end
- super(name, data.first)
- }
+ klass = Class.new(self) {
+ define_method(:initialize, ->(data = nil) {super(name, data)})
}
singleton = (class << klass; self; end)
singleton.class_eval{