Sha256: 073efd904b4b6a953ba670f63cde42c5c4443ffc650b013ec7d39f7cd4954351

Contents?: true

Size: 630 Bytes

Versions: 60

Compression:

Stored size: 630 Bytes

Contents

module HammerCLI

  class AbstractOptionBuilder

    def build(builder_params={})
    end

    protected

    def option(*args)
      HammerCLI::Options::OptionDefinition.new(*args)
    end

    def optionamize(name_candidate)
      name_candidate.gsub('_', '-')
    end

  end


  class OptionBuilderContainer < AbstractOptionBuilder

    def build(builder_params={})
      options = []
      builders.each do |b|
        options += b.build(builder_params)
      end
      options
    end

    def builders
      @builders ||= []
      @builders
    end

    def builders=(builders)
      @builders=builders
    end

  end

end

Version data entries

60 entries across 60 versions & 1 rubygems

Version Path
hammer_cli-3.14.0 lib/hammer_cli/option_builder.rb
hammer_cli-3.13.0 lib/hammer_cli/option_builder.rb
hammer_cli-3.12.0 lib/hammer_cli/option_builder.rb
hammer_cli-3.10.0 lib/hammer_cli/option_builder.rb
hammer_cli-3.9.0 lib/hammer_cli/option_builder.rb
hammer_cli-3.8.0 lib/hammer_cli/option_builder.rb
hammer_cli-3.7.0 lib/hammer_cli/option_builder.rb
hammer_cli-3.5.1 lib/hammer_cli/option_builder.rb
hammer_cli-3.6.0 lib/hammer_cli/option_builder.rb
hammer_cli-3.5.0 lib/hammer_cli/option_builder.rb
hammer_cli-3.4.0 lib/hammer_cli/option_builder.rb
hammer_cli-3.3.0 lib/hammer_cli/option_builder.rb
hammer_cli-3.2.0 lib/hammer_cli/option_builder.rb
hammer_cli-3.1.1 lib/hammer_cli/option_builder.rb
hammer_cli-3.0.2 lib/hammer_cli/option_builder.rb
hammer_cli-3.1.0 lib/hammer_cli/option_builder.rb
hammer_cli-3.0.1 lib/hammer_cli/option_builder.rb
hammer_cli-3.0.0 lib/hammer_cli/option_builder.rb
hammer_cli-2.5.1 lib/hammer_cli/option_builder.rb
hammer_cli-2.5.0 lib/hammer_cli/option_builder.rb