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