|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
ObjectGetOpt
public class GetOpt
Java version of GNU getopt.
Nested Class Summary | |
---|---|
static class |
GetOpt.LongOption
A record used in a table of option descriptions passed to a constructor of GetOpt. |
Field Summary | |
---|---|
private String |
arg
The flags argument currently in use. |
private String[] |
argv
The arguments to main (note that argv[0] is the first arg, not the class name. |
int |
longind
Index in longopts of a long-named option found. |
private boolean |
longonly
Flag to indicate that only long options should be recognized. |
private GetOpt.LongOption[] |
longopts
Table of long options. |
private int |
nextchar
The index in arg of the next option flag to be examined. |
static int |
NO_ARG
A value for LongOption.has Arg meaning "option has no argument". |
static int |
OPT_ARG
A value for LongOption.has Arg meaning "option has an optional argument". |
String |
optarg
For communication from nextOpt() to the caller. |
boolean |
opterr
If set to false, do not print messages to System.err for unrecognized options. |
int |
optind
Index in argv of the next element to be scanned. |
char |
optopt
Set to an option character which was unrecognized. |
private String |
progname
The "program" (class) name (counterpart of argv[0] in Unix). |
static int |
REQ_ARG
A value for LongOption.has Arg meaning "option has a required argument". |
private String |
shortopts
Short option flags. |
private static String |
VERSION
Source code version. |
Constructor Summary | |
---|---|
GetOpt(String progname,
String[] argv,
String shortopts)
Create a new option parser. |
|
GetOpt(String progname,
String[] argv,
String shortopts,
GetOpt.LongOption[] longopts)
Create a new option parser. |
|
GetOpt(String progname,
String[] argv,
String shortopts,
GetOpt.LongOption[] longopts,
boolean longonly)
Create a new option parser. |
Method Summary | |
---|---|
static void |
main(String[] ignore)
Main program for testing. |
int |
nextOpt()
Return the next option. |
private static void |
pl(Object o)
Helper function to main: prints a message to System.err. |
private void |
printErr(String a,
String b,
String c)
A convenience routine to print an error to System.err if opterr is true. |
private static String[] |
tokenize(String str)
Helper procedure for main. |
Methods inherited from class Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private static String VERSION
public static final int NO_ARG
public static final int REQ_ARG
public static final int OPT_ARG
private String progname
private String[] argv
private String arg
optind
private String shortopts
private GetOpt.LongOption[] longopts
private boolean longonly
public int optind
private int nextchar
public int longind
public String optarg
public boolean opterr
public char optopt
Constructor Detail |
---|
public GetOpt(String progname, String[] argv, String shortopts, GetOpt.LongOption[] longopts, boolean longonly)
progname
- the name of the program (for error messages)argv
- an array of command-line argumentsshortopts
- a string of short option flags. A single colon
following a flag indicates it has a mandatory argument; a double colon
indicates an optional argument.longopts
- a table of long option descriptorslongonly
- if true, indicates athat -flag should be treated as a
long flag, like --flag, rather than four short flags.public GetOpt(String progname, String[] argv, String shortopts)
progname
- the name of the program (for error messages)argv
- an array of command-line argumentsshortopts
- a string of short option flags. A single colon
following a flag indicates it has a mandatory argument; a double colon
indicates an optional argument.public GetOpt(String progname, String[] argv, String shortopts, GetOpt.LongOption[] longopts)
progname
- the name of the program (for error messages)argv
- an array of command-line argumentsshortopts
- a string of short option flags. A single colon
following a flag indicates it has a mandatory argument; a double colon
indicates an optional argument.longopts
- a table of long option descriptorsMethod Detail |
---|
public int nextOpt()
private void printErr(String a, String b, String c)
a
- the first part of the messageb
- the middle part of the messagec
- the last part of the messageprivate static void pl(Object o)
o
- the messagepublic static void main(String[] ignore)
ignore
- ignoredprivate static String[] tokenize(String str)
str
- a command-line-like string.
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |