mirror of
https://github.com/ruby/ruby.git
synced 2025-08-24 21:44:30 +02:00

(https://github.com/ruby/irb/pull/873)
* Replace ExtendCommand with Command and standardize command related names
1. Rename lib/irb/extend-command.rb to lib/irb/command.rb
2. Rename lib/irb/cmd/*.rb to lib/irb/command/*.rb
3. Rename test/irb/test_cmd.rb to test/irb/test_command.rb
4. Rename ExtendCommand to Command
* Alias ExtendCommand to Command and deprecate it
* Rename Command::Nop to Command::Base
* Not deprecate old constants just yet
* Add lib/irb/cmd/nop.rb back
462c1284af
55 lines
1.1 KiB
Ruby
55 lines
1.1 KiB
Ruby
# frozen_string_literal: false
|
|
#
|
|
# nop.rb -
|
|
# by Keiju ISHITSUKA(keiju@ruby-lang.org)
|
|
#
|
|
|
|
module IRB
|
|
# :stopdoc:
|
|
|
|
module Command
|
|
class CommandArgumentError < StandardError; end
|
|
|
|
class Base
|
|
class << self
|
|
def category(category = nil)
|
|
@category = category if category
|
|
@category
|
|
end
|
|
|
|
def description(description = nil)
|
|
@description = description if description
|
|
@description
|
|
end
|
|
|
|
private
|
|
|
|
def string_literal?(args)
|
|
sexp = Ripper.sexp(args)
|
|
sexp && sexp.size == 2 && sexp.last&.first&.first == :string_literal
|
|
end
|
|
end
|
|
|
|
def self.execute(irb_context, *opts, **kwargs, &block)
|
|
command = new(irb_context)
|
|
command.execute(*opts, **kwargs, &block)
|
|
rescue CommandArgumentError => e
|
|
puts e.message
|
|
end
|
|
|
|
def initialize(irb_context)
|
|
@irb_context = irb_context
|
|
end
|
|
|
|
attr_reader :irb_context
|
|
|
|
def execute(*opts)
|
|
#nop
|
|
end
|
|
end
|
|
|
|
Nop = Base
|
|
end
|
|
|
|
# :startdoc:
|
|
end
|