Sha256: 376c515e06c9002582e7e72d722a234d9ed9354b5025124a67b910d13f8e982e

Contents?: true

Size: 824 Bytes

Versions: 5

Compression:

Stored size: 824 Bytes

Contents

module Badger
  class Badger < Array
    attr_reader :github_slug, :owner

    def initialize url
      @url = url
    end

    def github_slug
      @github_slug ||= Badger.slug_extract @url
    end

    def owner
      @owner ||= github_slug.split('/')[0]
    end

    def add service
      self << Service.badge(service, github_slug)
      self.delete nil
    end

    def license type
      self << License.badge(type, owner)
      self.delete nil
    end

    def rubygem name
      self << Rubygem.badge(name)
    end

    def bonus
      self.uniq!
      self << Bonus.badge(self)
    end

    def badge_type type
      Config.instance.config['badge_type'] = type
    end

    def to_s
      self.uniq!

      s = ''
      self.each do |badge|
        s << badge
        s << "\n"
      end

      s
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
badgerbadgerbadger-0.9.0 lib/badger/badger.rb
badgerbadgerbadger-0.8.3 lib/badger/badger.rb
badgerbadgerbadger-0.8.2 lib/badger/badger.rb
badgerbadgerbadger-0.8.1 lib/badger/badger.rb
badgerbadgerbadger-0.8.0 lib/badger/badger.rb