Sha256: 70815efb1a9e1ef9cde4f9244e482579f0eea87274b8ecf205aa590d5e401eba

Contents?: true

Size: 772 Bytes

Versions: 2

Compression:

Stored size: 772 Bytes

Contents

require 'coderay'
require 'json'

module Docs
  class ERBEnvironment
    attr_writer :examples
    attr_accessor :content
    attr_accessor :config # <%= config.api_endpoint %> 

    # <%= example :source, "curl/users/getting.sh" %>
    def example(source_or_output, name)
      raise ArgumentError, "Must specify :source or :output as first argument" unless [:source, :output].include?(source_or_output) 
      @examples[source_or_output]["examples/#{name}"]
    end

    def pretty_print_json(json)
      begin
        JSON.pretty_generate(JSON.parse(json))
      rescue JSON::ParserError => e
        e.inspect
      end
    end

    def syntax_highlight(str, language)
      CodeRay.scan(str, language).div
    end

    def get_binding
      binding
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
docs-0.0.4 lib/docs/erb_environment.rb
docs-0.0.3 lib/docs/erb_environment.rb