cli: readability improvements.
- Rename `cmdline_args` to `argv` to make it more obvious where they come from. - Make the `if args_parsed` early return into `unless args_parsed` to (hopefully) make it clearer that this is not the "normal" case and to not check `argv` unless arguments haven't been parsed.
This commit is contained in:
parent
ee108f5b26
commit
9324a85955
@ -13,7 +13,7 @@ module Homebrew
|
|||||||
super
|
super
|
||||||
|
|
||||||
self[:remaining] = []
|
self[:remaining] = []
|
||||||
self[:cmdline_args] = ARGV.dup.freeze
|
self[:argv] = ARGV.dup.freeze
|
||||||
|
|
||||||
@args_parsed = false
|
@args_parsed = false
|
||||||
@processed_options = []
|
@processed_options = []
|
||||||
@ -174,21 +174,21 @@ module Homebrew
|
|||||||
end
|
end
|
||||||
|
|
||||||
def build_from_source
|
def build_from_source
|
||||||
return true if args_parsed && (build_from_source? || s?)
|
return argv.include?("--build-from-source") || argv.include?("-s") unless args_parsed
|
||||||
|
|
||||||
cmdline_args.include?("--build-from-source") || cmdline_args.include?("-s")
|
build_from_source? || s?
|
||||||
end
|
end
|
||||||
|
|
||||||
def build_bottle
|
def build_bottle
|
||||||
return true if args_parsed && build_bottle?
|
return argv.include?("--build-bottle") unless args_parsed
|
||||||
|
|
||||||
cmdline_args.include?("--build-bottle")
|
build_bottle?
|
||||||
end
|
end
|
||||||
|
|
||||||
def force_bottle
|
def force_bottle
|
||||||
return true if args_parsed && force_bottle?
|
return argv.include?("--force-bottle") unless args_parsed
|
||||||
|
|
||||||
cmdline_args.include?("--force-bottle")
|
force_bottle?
|
||||||
end
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
@ -198,7 +198,7 @@ module Homebrew
|
|||||||
arguments = if args_parsed
|
arguments = if args_parsed
|
||||||
named
|
named
|
||||||
else
|
else
|
||||||
cmdline_args.reject { |arg| arg.start_with?("-") }
|
argv.reject { |arg| arg.start_with?("-") }
|
||||||
end
|
end
|
||||||
arguments.map do |arg|
|
arguments.map do |arg|
|
||||||
if arg.include?("/") || arg.end_with?(".tar.gz") || File.exist?(arg)
|
if arg.include?("/") || arg.end_with?(".tar.gz") || File.exist?(arg)
|
||||||
@ -210,21 +210,21 @@ module Homebrew
|
|||||||
end
|
end
|
||||||
|
|
||||||
def head
|
def head
|
||||||
return true if args_parsed && HEAD?
|
return argv.include?("--HEAD") unless args_parsed
|
||||||
|
|
||||||
cmdline_args.include?("--HEAD")
|
HEAD?
|
||||||
end
|
end
|
||||||
|
|
||||||
def devel
|
def devel
|
||||||
return true if args_parsed && devel?
|
return argv.include?("--devel") unless args_parsed
|
||||||
|
|
||||||
cmdline_args.include?("--devel")
|
devel?
|
||||||
end
|
end
|
||||||
|
|
||||||
def build_universal
|
def build_universal
|
||||||
return true if args_parsed && universal?
|
return argv.include?("--universal") unless args_parsed
|
||||||
|
|
||||||
cmdline_args.include?("--universal")
|
universal?
|
||||||
end
|
end
|
||||||
|
|
||||||
def spec(default = :stable)
|
def spec(default = :stable)
|
||||||
|
|||||||
@ -152,11 +152,11 @@ module Homebrew
|
|||||||
@parser.to_s
|
@parser.to_s
|
||||||
end
|
end
|
||||||
|
|
||||||
def parse(cmdline_args = ARGV, allow_no_named_args: false)
|
def parse(argv = ARGV, allow_no_named_args: false)
|
||||||
raise "Arguments were already parsed!" if @args_parsed
|
raise "Arguments were already parsed!" if @args_parsed
|
||||||
|
|
||||||
begin
|
begin
|
||||||
named_args = @parser.parse(cmdline_args)
|
named_args = @parser.parse(argv)
|
||||||
rescue OptionParser::InvalidOption => e
|
rescue OptionParser::InvalidOption => e
|
||||||
$stderr.puts generate_help_text
|
$stderr.puts generate_help_text
|
||||||
raise e
|
raise e
|
||||||
@ -166,7 +166,7 @@ module Homebrew
|
|||||||
@args[:remaining] = named_args
|
@args[:remaining] = named_args
|
||||||
@args.freeze_processed_options!(@processed_options)
|
@args.freeze_processed_options!(@processed_options)
|
||||||
Homebrew.args = @args
|
Homebrew.args = @args
|
||||||
cmdline_args.freeze
|
argv.freeze
|
||||||
@args_parsed = true
|
@args_parsed = true
|
||||||
@parser
|
@parser
|
||||||
end
|
end
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user