class PryBloodline::Setup

Attributes

configuration[R]

Public Class Methods

new(configuration) click to toggle source
# File lib/pry-bloodline/setup.rb, line 5
def initialize(configuration)
  @configuration = configuration
end

Public Instance Methods

multiline_prompt() click to toggle source
# File lib/pry-bloodline/setup.rb, line 19
def multiline_prompt
  proc do |object, level, _pry_|
    padding = ' ' * prompt_without_separator.(object, level, _pry_).uncolorize.size
    colorize.("#{padding} #{separator_proc.()}  ")
  end
end
prompt() click to toggle source
# File lib/pry-bloodline/setup.rb, line 13
def prompt
  proc do |object, level, _pry_|
    colorize.("#{prompt_without_separator.(object, level, _pry_)} #{separator_proc.()}  ")
  end
end
setup!() click to toggle source
# File lib/pry-bloodline/setup.rb, line 9
def setup!
  Pry.config.prompt = [ prompt, multiline_prompt ]
end

Private Instance Methods

color_enabled?() click to toggle source
# File lib/pry-bloodline/setup.rb, line 44
def color_enabled?
  Pry.color && colored_prompt?
end
colored_prompt?() click to toggle source
# File lib/pry-bloodline/setup.rb, line 48
def colored_prompt?
  Readline::VERSION !~ /EditLine/
end
colorize() click to toggle source
# File lib/pry-bloodline/setup.rb, line 34
def colorize
  proc do |message|
    if color_enabled?
      message
    else
      message.uncolorize
    end
  end
end
method_missing(method_sym, *args, &block) click to toggle source
Calls superclass method
# File lib/pry-bloodline/setup.rb, line 52
def method_missing(method_sym, *args, &block)
  if configuration.respond_to? method_sym
    configuration.send(method_sym, *args, &block)
  else
    super
  end
end
prompt_without_separator() click to toggle source
# File lib/pry-bloodline/setup.rb, line 28
def prompt_without_separator
  proc do |object, level, _pry_|
    "#{line_proc.(object, level, _pry_)} #{name_proc.()} #{path_proc.(object, level, _pry_)}"
  end
end
respond_to_missing?(method_sym) click to toggle source
# File lib/pry-bloodline/setup.rb, line 60
def respond_to_missing?(method_sym)
  configuration.respond_to? method_sym
end