Support for the Ruby 2.4 series has ended. See here for reference.
An abstract class, or superclass, for CompositeNotifier and LeveledNotifier to inherit. It provides several wrapper methods for the OutputMethod object used by the Notifier.
The prefix for this Notifier, which is appended to all objects being inspected during output.
Creates a new Notifier object
# File irb/notifier.rb, line 43
def initialize(prefix, base_notifier)
@prefix = prefix
@base_notifier = base_notifier
end
Execute the given block if notifications are enabled.
# File irb/notifier.rb, line 101
def exec_if
yield(@base_notifier) if notify?
end
A wrapper method used to determine whether notifications are enabled.
Defaults to true.
# File irb/notifier.rb, line 55
def notify?
true
end
Same as ppx, except it uses the prefix given during object initialization. See OutputMethod#ppx for more detail.
# File irb/notifier.rb, line 84
def pp(*objs)
if notify?
@base_notifier.ppx @prefix, *objs
end
end
Same as pp, except it concatenates the given prefix with the prefix given during object initialization.
See OutputMethod#ppx for more detail.
# File irb/notifier.rb, line 94
def ppx(prefix, *objs)
if notify?
@base_notifier.ppx @prefix+prefix, *objs
end
end
See OutputMethod#print for more detail.
# File irb/notifier.rb, line 60
def print(*opts)
@base_notifier.print prefix, *opts if notify?
end
See OutputMethod#printf for more detail.
# File irb/notifier.rb, line 70
def printf(format, *opts)
@base_notifier.printf(prefix + format, *opts) if notify?
end
See OutputMethod#printn for more detail.
# File irb/notifier.rb, line 65
def printn(*opts)
@base_notifier.printn prefix, *opts if notify?
end
See OutputMethod#puts for more detail.
# File irb/notifier.rb, line 75
def puts(*objs)
if notify?
@base_notifier.puts(*objs.collect{|obj| prefix + obj.to_s})
end
end