summaryrefslogtreecommitdiff
path: root/doc/optparse/ruby
diff options
context:
space:
mode:
authorBurdette Lamar <[email protected]>2021-04-11 23:43:02 -0500
committerHiroshi SHIBATA <[email protected]>2021-07-28 20:13:39 +0900
commita15f0b9fe24c3488ca69171c147a8648b55c8fbc (patch)
treeaabf5aa3731930a46943a52f54dce685e9f5d2e3 /doc/optparse/ruby
parentbf175e7ec20a1ea3e81b906074a6829b9cc34335 (diff)
[ruby/optparse] Tutorial: explain custom argument converters (https://github.com/ruby/optparse/pull/19)
https://github.com/ruby/optparse/commit/385dd4322d
Diffstat (limited to 'doc/optparse/ruby')
-rw-r--r--doc/optparse/ruby/basic.rb16
-rw-r--r--doc/optparse/ruby/match_converter.rb9
2 files changed, 25 insertions, 0 deletions
diff --git a/doc/optparse/ruby/basic.rb b/doc/optparse/ruby/basic.rb
new file mode 100644
index 0000000000..617d337427
--- /dev/null
+++ b/doc/optparse/ruby/basic.rb
@@ -0,0 +1,16 @@
+# Require the OptionParser code.
+require 'optparse'
+# Create an OptionParser object.
+parser = OptionParser.new
+# Define one or more options.
+parser.on('-x', 'Whether to X') do |value|
+ p ['x', value]
+end
+parser.on('-y', 'Whether to Y') do |value|
+ p ['y', value]
+end
+parser.on('-z', 'Whether to Z') do |value|
+ p ['z', value]
+end
+# Parse the command line.
+parser.parse!
diff --git a/doc/optparse/ruby/match_converter.rb b/doc/optparse/ruby/match_converter.rb
new file mode 100644
index 0000000000..13dc5fcb51
--- /dev/null
+++ b/doc/optparse/ruby/match_converter.rb
@@ -0,0 +1,9 @@
+require 'optparse/date'
+parser = OptionParser.new
+parser.accept(:capitalize, /\w*/) do |value|
+ value.capitalize
+end
+parser.on('--capitalize XXX', :capitalize) do |value|
+ p [value, value.class]
+end
+parser.parse!