Sha256: 421abb549592bf64e76cee19c48706c5e114ec7b35feeec72d925894863503c8

Contents?: true

Size: 1.12 KB

Versions: 2

Compression:

Stored size: 1.12 KB

Contents

require 'mustermann'
require 'mustermann/visualizer/highlight'
require 'mustermann/visualizer/tree_renderer'
require 'mustermann/visualizer/pattern_extension'

module Mustermann
  # Namespace for Mustermann visualization logic.
  module Visualizer
    extend self

    # @example creating a highlight object
    #   require 'mustermann/visualizer'
    #   
    #   pattern   = Mustermann.new('/:name')
    #   highlight = Mustermann::Visualizer.highlight(pattern)
    #   
    #   puts highlight.to_ansi
    #
    # @return [Mustermann::Visualizer::Highlight] highlight object for given pattern
    # @param (see Mustermann::Visualizer::Highlight#initialize)
    def highlight(pattern, **options)
      Highlight.new(pattern, **options)
    end

    # @example creating a tree object
    #   require 'mustermann/visualizer'
    #   
    #   pattern = Mustermann.new('/:name')
    #   tree    = Mustermann::Visualizer.tree(pattern)
    #   
    #   puts highlight.to_s
    #
    # @return [Mustermann::Visualizer::Tree] tree object for given pattern
    def tree(pattern, **options)
      TreeRenderer.render(pattern, **options)
    end
  end
end

Version data entries

2 entries across 2 versions & 2 rubygems

Version Path
mustermann-contrib-1.0.0.beta2 lib/mustermann/visualizer.rb
mustermann-visualizer-0.4.0 lib/mustermann/visualizer.rb