-
Notifications
You must be signed in to change notification settings - Fork 8
Parsing Options
mosop edited this page Nov 14, 2016
·
16 revisions
Crystal CLI integrates its APIs with optarg. optarg is a library for parsing command-line options and arguments.
Once you define a command class, the class automatically have an optarg's model class that is named Options. You can define options and arguments inside the Options class.
class Smile < Cli::Command
class Options
bool "--say-hello"
end
endTo access parsed values in a running context, use the following methods:
- options
- args
- named_args
- nameless_args
- parsed_args
- unparsed_args
These methods are proxy methods and internally invoke the corresponding optarg's API methods. The method names are the same as the optarg API.
class Smile < Cli::Command
class Options
bool "--say-hello"
end
def run
puts "hello" if options.say_hello?
puts ":)"
end
end
Smile.run %w(--say-hello)This prints:
hello
:)