Overview

Packages

  • Argv

Classes

  • Horde_Argv_AmbiguousOptionException
  • Horde_Argv_BadOptionException
  • Horde_Argv_Exception
  • Horde_Argv_HelpFormatter
  • Horde_Argv_IndentedHelpFormatter
  • Horde_Argv_Option
  • Horde_Argv_OptionConflictException
  • Horde_Argv_OptionContainer
  • Horde_Argv_OptionException
  • Horde_Argv_OptionGroup
  • Horde_Argv_OptionValueException
  • Horde_Argv_Parser
  • Horde_Argv_TitledHelpFormatter
  • Horde_Argv_Translation
  • Horde_Argv_Values
  • Overview
  • Package
  • Class
  • Tree

Class Horde_Argv_Parser

Class attributes: standardOptionList : [Option] list of standard options that will be accepted by all instances of this parser class (intended to be overridden by subclasses).

Instance attributes: usage : string a usage string for your program. Before it is displayed to the user, "%prog" will be expanded to the name of your program ($this->prog or os.path.basename(sys.argv[0])). prog : string the name of the current program (to override os.path.basename(sys.argv[0])). epilog : string paragraph of help text to print after option help optionGroups : [OptionGroup] list of option groups in this parser (option groups are irrelevant for parsing the command-line, but very useful for generating help) allowInterspersedArgs : bool = true if true, positional arguments may be interspersed with options. Assuming -a and -b each take a single argument, the command-line -ablah foo bar -bboo baz will be interpreted the same as -ablah -bboo -- foo bar baz If this flag were false, that command line would be interpreted as -ablah -- foo bar -bboo baz -- ie. we stop processing options as soon as we see the first non-option argument. (This is the tradition followed by Python's getopt module, Perl's Getopt::Std, and other argument- parsing libraries, but it is generally annoying to users.) allowUnknownArgs : bool = false if true, unrecognized arguments will be auto-created, instead of throwing a BadOptionException. ignoreUnknownArgs : bool = false if true, unrecognized arguments will be silently skipped, instead of throwing a BadOptionException. rargs : [string] the argument list currently being parsed. Only set when parseArgs() is active, and continually trimmed down as we consume arguments. Mainly there for the benefit of callback options. largs : [string] the list of leftover arguments that we have skipped while parsing options. If allowInterspersedArgs is false, this list is always empty. values : Values the set of option values currently being accumulated. Only set when parseArgs() is active. Also mainly for callbacks.

Horde_Argv_OptionContainer
Extended by Horde_Argv_Parser
Package: Argv
Category: Horde
Located at Horde/Argv/Parser.php
Methods summary
public
# __construct( mixed $args = array() )

Initialize the option list and related data structures. This method must be provided by subclasses, and it must initialize at least the following instance attributes: optionList, shortOpt, longOpt, defaults.

Initialize the option list and related data structures. This method must be provided by subclasses, and it must initialize at least the following instance attributes: optionList, shortOpt, longOpt, defaults.

Overrides

Horde_Argv_OptionContainer::__construct()
public
# __destruct( )

Declare that you are done with this Horde_Argv_Parser. This cleans up reference cycles so the Horde_Argv_Parser (and all objects referenced by it) can be garbage-collected promptly. After calling destroy(), the Horde_Argv_Parser is unusable.

Declare that you are done with this Horde_Argv_Parser. This cleans up reference cycles so the Horde_Argv_Parser (and all objects referenced by it) can be garbage-collected promptly. After calling destroy(), the Horde_Argv_Parser is unusable.

public
# setUsage( mixed $usage )
public
# enableInterspersedArgs( )
public
# disableInterspersedArgs( )
public
# setDefault( mixed $dest, mixed $value )
public
# setDefaults( mixed $defaults )
public
# getDefaultValues( )
public
# addOptionGroup( )
public
# getOptionGroup( mixed $opt_str )
public
# parseArgs( mixed $args = null, mixed $values = null )

Parse the command-line options found in 'args' (default: sys.argv[1:]). Any errors result in a call to 'parserError()', which by default prints the usage message to stderr and calls exit() with an error message. On success returns a pair (values, args) where 'values' is an Values instance (with all your option values) and 'args' is the list of arguments left over after parsing options.

Parse the command-line options found in 'args' (default: sys.argv[1:]). Any errors result in a call to 'parserError()', which by default prints the usage message to stderr and calls exit() with an error message. On success returns a pair (values, args) where 'values' is an Values instance (with all your option values) and 'args' is the list of arguments left over after parsing options.

public
# checkValues( mixed $values, mixed $args )

Check that the supplied option values and leftover arguments are valid. Returns the option values and leftover arguments (possibly adjusted, possibly completely new -- whatever you like). Default implementation just returns the passed-in values; subclasses may override as desired.

Check that the supplied option values and leftover arguments are valid. Returns the option values and leftover arguments (possibly adjusted, possibly completely new -- whatever you like). Default implementation just returns the passed-in values; subclasses may override as desired.

public static
# matchAbbrev( mixed $s, mixed $wordmap )

(s : string, wordmap : {string : Option}) -> string

(s : string, wordmap : {string : Option}) -> string

Return the string key in 'wordmap' for which 's' is an unambiguous abbreviation. If 's' is found to be ambiguous or doesn't match any of 'words', raise BadOptionError.

public
# getProgName( )
public
# expandProgName( mixed $s )
public
# getDescription( )

Overrides

Horde_Argv_OptionContainer::getDescription()
public
# parserExit( mixed $status = 0, mixed $msg = null )
public
# parserError( string $msg )

Print a usage message incorporating $msg to stderr and exit. If you override this in a subclass, it should not return -- it should either exit or raise an exception.

Print a usage message incorporating $msg to stderr and exit. If you override this in a subclass, it should not return -- it should either exit or raise an exception.

Parameters

$msg
public
# getUsage( mixed $formatter = null )
public
# printUsage( mixed $file = null )

(file : file = stdout)

(file : file = stdout)

Print the usage message for the current program ($this->_usage) to 'file' (default stdout). Any occurence of the string "%prog" in $this->_usage is replaced with the name of the current program (basename of sys.argv[0]). Does nothing if $this->_usage is empty or not defined.

public
# getVersion( )
public
# printVersion( mixed $file = null )

file : file = stdout

file : file = stdout

Print the version message for this program ($this->version) to 'file' (default stdout). As with printUsage(), any occurence of "%prog" in $this->version is replaced by the current program's name. Does nothing if $this->version is empty or undefined.

public
# formatOptionHelp( mixed $formatter = null )

Overrides

Horde_Argv_OptionContainer::formatOptionHelp()
public
# formatEpilog( mixed $formatter )
public
# formatHelp( mixed $formatter = null )

Overrides

Horde_Argv_OptionContainer::formatHelp()
public
# printHelp( mixed $file = null )

file : file = stdout

file : file = stdout

Print an extended help message, listing all options and any help text provided with them, to 'file' (default stdout).

Methods inherited from Horde_Argv_OptionContainer
addOption(), addOptions(), formatDescription(), getOption(), hasOption(), removeOption(), setConflictHandler(), setDescription()
Properties summary
public array $standardOptionList
# array()
public array $optionGroups
# array()
Properties inherited from Horde_Argv_OptionContainer
$conflictHandler, $defaults, $description, $longOpt, $optionClass, $optionList, $shortOpt
API documentation generated by ApiGen