diff options
Diffstat (limited to 'lib/slop/parser.rb')
-rw-r--r-- | lib/slop/parser.rb | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/lib/slop/parser.rb b/lib/slop/parser.rb index 3cba82b..463e75a 100644 --- a/lib/slop/parser.rb +++ b/lib/slop/parser.rb @@ -80,6 +80,15 @@ module Slop @arguments += ignored_args + if !suppress_errors? + unused_options.each do |o| + if o.config[:required] + pretty_flags = o.flags.map { |f| "`#{f}'" }.join(", ") + raise MissingRequiredOption, "missing required option #{pretty_flags}" + end + end + end + Result.new(self).tap do |result| used_options.each { |o| o.finish(result) } end |