/usr/lib/ruby/vendor_ruby/test/unit/util/procwrapper.rb is in ruby-test-unit 3.2.5-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 | #--
#
# Author:: Nathaniel Talbott.
# Copyright:: Copyright (c) 2000-2002 Nathaniel Talbott. All rights reserved.
# License:: Ruby license.
module Test
module Unit
module Util
# 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 ProcWrapper
# Creates a new wrapper for a_proc.
def initialize(a_proc)
@a_proc = a_proc
@hash = a_proc.inspect.sub(/^(#<#{a_proc.class}:)/){''}.sub(/(>)$/){''}.hex
end
def hash
return @hash
end
def ==(other)
case(other)
when ProcWrapper
return @a_proc == other.to_proc
else
return super
end
end
alias :eql? :==
def to_proc
return @a_proc
end
end
end
end
end
|