module Mustermann::Visualizer::Highlighter

@!visibility private

@!visibility private

@!visibility private

@!visibility private

@!visibility private

@!visibility private

Public Instance Methods

create(&block) click to toggle source

Used to generate highlighting rules on the fly. @see {Mustermann::Shell#highlighter} @see {Mustermann::Simple#highlighter} @!visibility private

# File lib/mustermann/visualizer/highlighter.rb, line 33
def create(&block)
  Class.new(AdHoc, &block)
end
highlight(pattern, renderer) click to toggle source

@return [String] highlighted string @!visibility private

# File lib/mustermann/visualizer/highlighter.rb, line 16
def highlight(pattern, renderer)
  highlighter_for(pattern).highlight(pattern, renderer)
end
highlighter_for(pattern) click to toggle source

@return [#highlight] Highlighter for given pattern @!visibility private

# File lib/mustermann/visualizer/highlighter.rb, line 22
def highlighter_for(pattern)
  return pattern.highlighter if pattern.respond_to? :highlighter and pattern.highlighter
  consts      = constants.map { |name| const_get(name) }
  highlighter = consts.detect { |c| c.respond_to? :highlight? and c.highlight? pattern }
  highlighter || Dummy
end