Args (gb.args)

Tato třída reimplementuje Args in gb.

Tato třída je statická.

This class acts like a pouze číst static array.

Tato třída je statically enumerable s FOR EACH slovem.

Static properties
Abort   Return or set whether the program aborts or raises an error when an Args method fails.

Inherited static properties
All   Return a copy of the process arguments as a string array.
Count   Return the number of command line arguments.
Max   Returns Args.Count - 1

Static methods
Begin   Start the program argument analysis.
End   Terminate the program argument analysis, and return all arguments that could not be interpreted as an option or an option argument.
Get   Define an option that takes one string argument, and return it.
GetFloat   Define an option that takes one floating point number argument, and return it.
GetInteger   Define an option that takes one integer number argument, and return it.
Has   Define an option that takes no argument, and return if it has been specified.
HelpText   Get the default help message.
Must be used after Args.Begin() Returns the message text and will Print to stdout if boolean arg PrintText is True.

Inherited static methods
Copy   Return a copy of the argument list as a string array.

This class analyses the arguments of the current process.

It allows you to:
  • Extract options from the program arguments.

  • Automatically handle --version and --help options.

  • Return non-options as arguments.

Use the Begin method to start the option analysis and the End method to terminate it.

This class will automatically print help, usage and version messages to the standard output if -h or -V are not checked manually by the programmer.

If an error occurs, the program quits with the exit code 1.

Since 3.16.4

Set Args.Abort = False to override quitting and handle errors yourself.

Since 3.16

You can use Args.Has() to check for -V --version or -h --help manually then the default output will be suppressed and your application will not quit.

This is useful to display your own custom help or version message.

Args.HelpText() can be used to get or print the original help text if you are handling the -h manually but it MUST ONLY be called AFTER calling Args.End() or the help texts will not yet have been constructed.

Public Sub Main()

  Dim bHelp As Boolean

  Args.Begin(Application.Name & " <options>")
  bHelp = Args.Has("h", "help", "Display a customised help message")
  Args.End()

  If bHelp Then

    Args.HelpText(True) ' Print standard help text to terminal
    Print "Additional Help message can be written here"

    ' Now exit the program as overriding the -h argument will stop it automatically quitting.
    Quit

  Endif

End