+
Point of view
All features
class COMMAND_LINE_ARGUMENTS
Summary
An object of that class manages a command-line parsing.
Direct parents
Insert list: ARGUMENTS
Class invariant
Overview
Creation features
{ANY}
Features
{ANY}
{}
{ANY}
{}
Implementation of ARGUMENTS (do not use directly):
{}
set_helper (a_helper: PROCEDURE[TUPLE 1[COMMAND_LINE_ARGUMENTS]])
effective procedure
{ANY}
ensure
  • a_helper /= Void implies helper = a_helper
parse_command_line: BOOLEAN
effective function
{ANY}
usage (stream: OUTPUT_STREAM)
effective procedure
{ANY}
parse_argument (a_argument: COMMAND_LINE_ARGUMENT): BOOLEAN
effective function
{}
make (a_argument: COMMAND_LINE_ARGUMENT)
effective procedure
{}
require
  • a_argument /= Void
ensure
cli_argument: COMMAND_LINE_ARGUMENT
writable attribute
{}
help_argument: COMMAND_LINE_ARGUMENT
once function
{}
helper: PROCEDURE[TUPLE 1[COMMAND_LINE_ARGUMENTS]]
writable attribute
{}
default_helper (a_arguments: COMMAND_LINE_ARGUMENTS)
effective procedure
{}
argument_count: INTEGER_32
effective function
{ANY}
Number of arguments given to command that started system execution (command name does not count).
ensure
  • Result >= 0
argument (i: INTEGER_32): STRING
effective function
{ANY}
i th argument of command that started system execution Gives the command name if i is 0.
require ensure
  • Result /= Void
command_name: STRING
effective function
{ANY}
command_arguments: FAST_ARRAY[STRING]
frozen
once function
{}
Give access to arguments command line including the command name at index 0.
This is a once function, so you can modify command-line arguments! (NOTE: just be sure not to remove the first argument, although you may change it)
ensure
  • not Result.is_empty
se_argc: INTEGER_32
{}
To implement command_arguments
se_argv (i: INTEGER_32): STRING
{}
To implement command_arguments