Sha256: 0ee0b2ac1b2ee363adb5ecb5f172aab94bb5085e9599e8b8ef6a02c0ba1d41d6

Contents?: true

Size: 541 Bytes

Versions: 20

Compression:

Stored size: 541 Bytes

Contents

require "github/markup/implementation"

module GitHub
  module Markup
    class GemImplementation < Implementation
      attr_reader :gem_name, :renderer

      def initialize(regexp, gem_name, &renderer)
        super regexp
        @gem_name = gem_name.to_s
        @renderer = renderer
      end

      def load
        return if @loaded
        require gem_name
        @loaded = true
      end

      def render(content)
        load
        renderer.call(content)
      end

      def name
        gem_name
      end
    end
  end
end

Version data entries

20 entries across 20 versions & 2 rubygems

Version Path
gitlab-markup-1.9.0 lib/github/markup/gem_implementation.rb
gitlab-markup-1.8.1 lib/github/markup/gem_implementation.rb
gitlab-markup-1.8.0 lib/github/markup/gem_implementation.rb
gitlab-markup-1.7.1 lib/github/markup/gem_implementation.rb
gitlab-markup-1.7.0 lib/github/markup/gem_implementation.rb
gitlab-markup-1.6.5 lib/github/markup/gem_implementation.rb
gitlab-markup-1.6.4 lib/github/markup/gem_implementation.rb
gitlab-markup-1.6.3 lib/github/markup/gem_implementation.rb
gitlab-markup-1.6.2 lib/github/markup/gem_implementation.rb
gitlab-markup-1.6.1 lib/github/markup/gem_implementation.rb
gitlab-markup-1.6.0 lib/github/markup/gem_implementation.rb
github-markup-1.4.9 lib/github/markup/gem_implementation.rb
github-markup-1.4.4 lib/github/markup/gem_implementation.rb
github-markup-1.4.3 lib/github/markup/gem_implementation.rb
github-markup-1.4.2 lib/github/markup/gem_implementation.rb
github-markup-1.4.1 lib/github/markup/gem_implementation.rb
gitlab-markup-1.5.1 lib/github/markup/gem_implementation.rb
gitlab-markup-1.5.0 lib/github/markup/gem_implementation.rb
gitlab-markup-1.5.0.pre lib/github/markup/gem_implementation.rb
github-markup-1.4.0 lib/github/markup/gem_implementation.rb