class Object
Constants
- Clasp
Main module for
CLASP
.Ruby libraryExamples¶ ↑
Simple command-line, no specifications¶ ↑
argv = %w{ --show-all=true infile -c outfile } args = CLASP::Arguments.new(argv) puts args.flags.size # => 1 puts args.flags[0] # => -c puts args.flags[0].name # => -c puts args.flags[0].inspect # => #<CLASP::Arguments::FlagArgument:0x007f87e18d4530 @arg="-c", @given_index=2, @given_name="-c", @argument_specification=nil, @given_hyphens=1, @given_label="c", @name="-c", @extras={}> puts args.options.size # => 1 puts args.options[0] # => --show-all=true puts args.options[0].name # => --show-all puts args.options[0].value # => true puts args.options[0].inspect # => #<CLASP::Arguments::OptionArgument:0x007f87e18d4940 @arg="--show-all=true", @given_index=0, @given_name="--show-all", @argument_specification=nil, @given_hyphens=2, @given_label="show-all", @value="true", @name="--show-all", @extras={}> puts args.values.size # => 2 puts args.values[0] # => infile puts args.values[0].given_index # => 1 puts args.values[1] # => outfile puts args.values[1].given_index # => 3
Use of the special double-slash flag to treat all subsequent arguments as values¶ ↑
argv = %w{ --show-all=true -- infile outfile -c } args = CLASP::Arguments.new(argv) puts args.flags.size # => 0 puts args.options.size # => 1 puts args.options[0] # => --show-all puts args.options[0].inspect # => #<CLASP::Arguments::OptionArgument:0x007fd23aa3aca0 @arg="--show-all=true", @given_index=0, @given_name="--show-all", @argument_specification=nil, @given_hyphens=2, @given_label="show-all", @value="true", @name="--show-all", @extras={}> puts args.values.size # => 3 puts args.values[0] # => infile puts args.values[1] # => outfile puts args.values[2] # => "-c"
Use of flag short forms¶ ↑
specifications = [ CLASP.Flag('--verbose', alias: '-v'), CLASP.Flag('--trace-output', aliases: [ '-t', '--trace' ]), ] argv = %w{ -trace -v } args = CLASP::Arguments.new(argv, specifications) puts args.flags.size # => 2 puts args.flags[0].name # => --trace-output puts args.flags[1].name # => --verbose puts args.options.size # => 0 puts args.values.size # => 0
Use of flag single short forms combined¶ ↑
specifications = [ CLASP.Flag('--expand', alias: '-x'), CLASP.Flag('--verbose', alias: '-v'), CLASP.Flag('--trace-output', aliases: [ '-t', '--trace' ]), ] argv = %w{ -tvx } args = CLASP::Arguments.new(argv, specifications) puts args.flags.size # => 3 puts args.options.size # => 0 puts args.values.size # => 0
Use of option short form¶ ↑
specifications = [ CLASP.Option('--show-all', alias: '-a'), ] argv = %w{ -c -a true infile outfile } args = CLASP::Arguments.new(argv, specifications) puts args.flags.size # => 1 puts args.flags[0] # => -c puts args.flags[0].inspect # => #<CLASP::Arguments::FlagArgument:0x007f8593b0ddd8 @arg="-c", @given_index=0, @given_name="-c", @argument_specification=nil, @given_hyphens=1, @given_label="c", @name="-c", @extras={}> puts args.options.size # => 1 puts args.options[0] # => --show-all puts args.options[0].inspect # => "#<CLASP::Arguments::OptionArgument:0x007f8593b0db80 @arg="-a", @given_index=1, @given_name="-a", @argument_specification=#<CLASP::OptionArgument:0x007f8593b2ea10 @name="--show-all", @aliases=["-a"], @help=nil, @values_range=[], @default_value=nil, @extras={}>, @given_hyphens=1, @given_label="a", @value="true", @name="--show-all", @extras={}>" puts args.values.size # => 2 puts args.values[0] # => infile puts args.values[1] # => outfile
Classes of interest¶ ↑
Functions of interest¶ ↑
-
::CLASP#show_version()