class Detroit::RubyProject

Ruby Project class.

Public Class Methods

project?(root) click to toggle source

Determine if a directory is a Ruby project by looking for a .gemspec file.

@todo While this will work well in the vase majority of

cases, there may be a few outlays.
# File lib/detroit/project.rb, line 100
def self.project?(root)
  Dir[File.join(root, "{*,}.gemspec")].first
end

Public Instance Methods

gemspec_file() click to toggle source
# File lib/detroit/project.rb, line 128
def gemspec_file
              Dir[File.join(root, "{*,}.gemspec")].first
end
index_file() click to toggle source
# File lib/detroit/project.rb, line 123
def index_file
              Dir[File.join(root, ".index")].first
end
metadata() click to toggle source
Calls superclass method Detroit::Project#metadata
# File lib/detroit/project.rb, line 110
def metadata
  @metadata ||= (
    if index_file
      Indexer::Metadata.open(root)
    elsif file = gemspec_file
      Indexer::Metadata.from_gemspec(file)
    else
      super # TODO: what metadata?
    end
  )
end