Sha256: 920eba8f834e6087f0129435805f0e275c65be42e7d2c438abee5f984d40a4a9

Contents?: true

Size: 726 Bytes

Versions: 4

Compression:

Stored size: 726 Bytes

Contents

module LicenseFinder
  class DependencyReport
    def self.underscored_name
      @underscored_name ||= begin
        str = name.dup
        str.sub!(/.*::/, '')
        str.gsub!(/([A-Z\d]+)([A-Z][a-z])/,'\1_\2')
        str.gsub!(/([a-z\d])([A-Z])/,'\1_\2')
        str.downcase!
      end
    end

    def initialize(dependencies=[])
      @dependencies = Array dependencies
    end

    def to_s
      filename = File.join(File.dirname(__FILE__), '..', 'templates', "#{self.class.underscored_name}.erb")
      template = ERB.new(File.read(filename), 0, '-')
      template.result(binding)
    end

    private
    attr_reader :dependencies

    def sorted_dependencies
      dependencies.sort_by(&:name)
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
license_finder-0.8.1-java lib/license_finder/dependency_report.rb
license_finder-0.8.1 lib/license_finder/dependency_report.rb
license_finder-0.8.0-java lib/license_finder/dependency_report.rb
license_finder-0.8.0 lib/license_finder/dependency_report.rb