Sha256: b91aa34cfd3ee5be960ca6bb3fe55fbf94148aeccee55e15a717b8b58770364c

Contents?: true

Size: 561 Bytes

Versions: 6770

Compression:

Stored size: 561 Bytes

Contents

# frozen_string_literal: true

require_relative "errors"

module Byebug
  #
  # Holds an array of subcommands for a command
  #
  class CommandList
    include Enumerable

    def initialize(commands)
      @commands = commands.sort_by(&:to_s)
    end

    def match(input)
      find { |cmd| cmd.match(input) }
    end

    def each
      @commands.each { |cmd| yield(cmd) }
    end

    def to_s
      "\n" + map { |cmd| cmd.columnize(width) }.join + "\n"
    end

    private

    def width
      @width ||= map(&:to_s).max_by(&:size).size
    end
  end
end

Version data entries

6,770 entries across 6,767 versions & 30 rubygems

Version Path
ory-client-0.0.1.alpha99 vendor/bundle/ruby/2.5.0/gems/byebug-11.1.3/lib/byebug/command_list.rb
ory-client-0.0.1.alpha98 vendor/bundle/ruby/2.5.0/gems/byebug-11.1.3/lib/byebug/command_list.rb
ory-client-0.0.1.alpha97 vendor/bundle/ruby/2.5.0/gems/byebug-11.1.3/lib/byebug/command_list.rb
ory-client-0.0.1.alpha96 vendor/bundle/ruby/2.5.0/gems/byebug-11.1.3/lib/byebug/command_list.rb
ory-client-0.0.1.alpha95 vendor/bundle/ruby/2.5.0/gems/byebug-11.1.3/lib/byebug/command_list.rb
ory-client-0.0.1.alpha94 vendor/bundle/ruby/2.5.0/gems/byebug-11.1.3/lib/byebug/command_list.rb
ory-client-0.0.1.alpha93 vendor/bundle/ruby/2.5.0/gems/byebug-11.1.3/lib/byebug/command_list.rb
ory-client-0.0.1.alpha92 vendor/bundle/ruby/2.5.0/gems/byebug-11.1.3/lib/byebug/command_list.rb
ory-oathkeeper-client-0.38.20.beta1 vendor/bundle/ruby/2.5.0/gems/byebug-11.1.3/lib/byebug/command_list.rb
ory-client-0.0.1.alpha91 vendor/bundle/ruby/2.5.0/gems/byebug-11.1.3/lib/byebug/command_list.rb
ory-client-0.0.1.alpha90 vendor/bundle/ruby/2.5.0/gems/byebug-11.1.3/lib/byebug/command_list.rb
ory-client-0.0.1.alpha89 vendor/bundle/ruby/2.5.0/gems/byebug-11.1.3/lib/byebug/command_list.rb
ory-client-0.0.1.alpha88 vendor/bundle/ruby/2.5.0/gems/byebug-11.1.3/lib/byebug/command_list.rb
ory-client-0.0.1.alpha87 vendor/bundle/ruby/2.5.0/gems/byebug-11.1.3/lib/byebug/command_list.rb
ory-client-0.0.1.alpha86 vendor/bundle/ruby/2.5.0/gems/byebug-11.1.3/lib/byebug/command_list.rb
ory-client-0.0.1.alpha85 vendor/bundle/ruby/2.5.0/gems/byebug-11.1.3/lib/byebug/command_list.rb
ory-client-0.0.1.alpha84 vendor/bundle/ruby/2.5.0/gems/byebug-11.1.3/lib/byebug/command_list.rb
ory-client-0.0.1.alpha83 vendor/bundle/ruby/2.5.0/gems/byebug-11.1.3/lib/byebug/command_list.rb
ory-client-0.0.1.alpha82 vendor/bundle/ruby/2.5.0/gems/byebug-11.1.3/lib/byebug/command_list.rb
ory-client-0.0.1.alpha81 vendor/bundle/ruby/2.5.0/gems/byebug-11.1.3/lib/byebug/command_list.rb