Class: Test::Unit::Util::ProcWrapper
Relationships & Source Files | |
Inherits: | Object |
Defined in: | lib/test/unit/util/procwrapper.rb |
Overview
Allows the storage of a Proc passed through '&' in a hash.
Note: this may be inefficient, since the hash being used is not necessarily very good. In Observable, efficiency is not too important, since the hash is only accessed when adding and removing listeners, not when notifying.
Class Method Summary
-
.new(a_proc) ⇒ ProcWrapper
constructor
Creates a new wrapper for a_proc.
Instance Method Summary
- #==(other) (also: #eql?)
-
#eql?(other)
Alias for #==.
- #hash
- #to_proc
Constructor Details
.new(a_proc) ⇒ ProcWrapper
Creates a new wrapper for a_proc.
# File 'lib/test/unit/util/procwrapper.rb', line 23
def initialize(a_proc) @a_proc = a_proc @hash = a_proc.inspect.sub(/^(#<#{a_proc.class}:)/){''}.sub(/(>)$/){''}.hex end
Instance Method Details
#==(other) Also known as: #eql?
[ GitHub ]# File 'lib/test/unit/util/procwrapper.rb', line 32
def ==(other) case(other) when ProcWrapper return @a_proc == other.to_proc else return super end end
#eql?(other)
Alias for #==.
# File 'lib/test/unit/util/procwrapper.rb', line 40
alias :eql? :==
#hash
[ GitHub ]# File 'lib/test/unit/util/procwrapper.rb', line 28
def hash return @hash end
#to_proc
[ GitHub ]# File 'lib/test/unit/util/procwrapper.rb', line 42
def to_proc return @a_proc end