Sha256: 7bae164ceea4f5176daef9c9256bf0938281d0eb4ad0f2a26b47a7442ee94c72
Contents?: true
Size: 1.27 KB
Versions: 2
Compression:
Stored size: 1.27 KB
Contents
module Picky module Generators # Selects the right generator. # class Selector attr_reader :types def initialize @types = { :sinatra_client => [Client::Sinatra, :sinatra_client_name], :client => [Client::Sinatra, :sinatra_client_name], :classic_server => [Server::Classic, :unicorn_server_name], :sinatra_server => [Server::Sinatra, :sinatra_server_name], :server => [Server::Sinatra, :sinatra_server_name], :all_in_one => [AllInOne::Sinatra, :"directory_name (use e.g. for Heroku)"] } end # Run the generators with this command. # # This will "route" the commands to the right specific generator. # def generate *args generator = generator_for *args generator.generate end # # def generator_for identifier = nil, *args generator_info = types[identifier.to_sym] generator_class = generator_info.first generator_for_class generator_class, identifier, *args rescue raise NotFoundException.new(self) end # # def generator_for_class klass, *args klass.new *args end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
picky-generators-3.0.0.pre5 | lib/picky-generators/generators/selector.rb |
picky-generators-3.0.0.pre4 | lib/picky-generators/generators/selector.rb |