module Take # Handles project information for a specific project. Tends to represent # an entire directory. class Project # The name of the project. This is normally guessed from the directory # name. # # @return [String] attr_accessor :name # Initialize the project. def initialize(name = nil, &block) raise ArgumentError, "Projects require blocks" unless block_given? @block = block @name = name end end end