Extracted from Pike v8.0 release 164 as of 2016-04-05.
   

Module Arg

Description

Argument parsing module This module supports two rather different methods of argument parsing. The first is suitable quick argument parsing without much in the way of checking:

int main( int c, array(string) argv ) { mapping arguments = Arg.parse(argv); array files = arguments[Arg.REST]; if( arguments->help ) print_help(); ... }

The Arg.parse method will return a mapping from argument name to the argument value, if any.

Non-option arguments will be placed in the index Arg.REST

The second way to use this module is to inherit the LowOptions class and then start adding supported arguments:

class MyArguments { inherit Arg.LowOptions; Opt verbose = NoOpt("-v")|NoOpt("--verbose"); Opt help = MaybeOpt("--help"); Opt output = HasOpt("--output")|HasOpt("-o"); };

Then, in main:

MyArguments args = MyArguments(argv);

See the documentation for OptLibrary for details about the various Opt classes.


Constant REST

constant Arg.REST

Description

Constant used by Arg.parse() to indicate the remaining objects.