This file is indexed.

/usr/lib/ruby/vendor_ruby/em-synchrony/em-jack.rb is in ruby-em-synchrony 1.0.5-2ubuntu1.

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
begin
  require "em-jack"
rescue LoadError => error
  raise "Missing EM-Synchrony dependency: gem install em-jack"
end

# WANT: namespaced under EventMachine.. would be nice :-)
# NOTE: no need for "pooling" since Beanstalk supports pipelining
module EMJack
  class Connection

    alias :ause :use
    def use(tube, &blk)
      return if @used_tube == tube

      f = Fiber.current

      # WANT: per command errbacks, would be nice, instead of one global
      # errback  = Proc.new {|r| f.resume(r) }

      on_error {|r| f.resume(r)}

      @used_tube = tube
      @conn.send(:use, tube)

      # WANT: Add conditional on add_deferrable to either accept two procs, or a single block
      #       .. two procs = callback, errback
      add_deferrable { |r| f.resume(r) }

      Fiber.yield
    end

  end
end