|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectccs.utils.FlagArgsParser
public class FlagArgsParser
A simplistic command-line arguments parser. It accepts argument sets
of the form -flag foo bar
- ie. a flag argument starting
with a '-', followed by zero or more non-flag parameter arguments
pertaining to that flag. These may be followed by zero or more
terminal parameters which aren't bound to a flag.
Constructor Summary | |
---|---|
FlagArgsParser(java.lang.String[] args,
java.util.Map<java.lang.String,java.lang.Integer> flags)
Construct the parser. |
|
FlagArgsParser(java.lang.String[] args,
java.util.Map<java.lang.String,java.lang.Integer> flags,
java.util.Map<java.lang.String,java.lang.Integer> varargs)
Construct the parser. |
Method Summary | |
---|---|
java.lang.String[] |
argsFor(java.lang.String flag,
int nskip)
Obtain the parameters of a flag, if present. |
boolean |
isExist(java.lang.String flag,
int nskip)
Whether a flag argument exists. |
java.lang.String[] |
terminals()
Return the terminal parameters - parameters which aren't bound to a flag. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public FlagArgsParser(java.lang.String[] args, java.util.Map<java.lang.String,java.lang.Integer> flags)
args
- The list of arguments.flags
- A map from every recognised flag, to the number of
parameters it takes. Every flag must begin with '-'.public FlagArgsParser(java.lang.String[] args, java.util.Map<java.lang.String,java.lang.Integer> flags, java.util.Map<java.lang.String,java.lang.Integer> varargs)
args
- The list of arguments.flags
- A map from every recognised flag, to the number of
parameters it takes. Every flag must begin with '-'.varargs
- For recognised flags which take variable numbers of
arguments, the maximum number it can use. This is used to distinguish
between arguments attached to the last flag, and terminals not attached
to any flag.Method Detail |
---|
public boolean isExist(java.lang.String flag, int nskip)
flag
- The flag to look for.nskip
- The number of matches to skip over. This allows
searching for repeated parameters.
public java.lang.String[] argsFor(java.lang.String flag, int nskip)
flag
- The flag value to search for. This MUST be a member of the
flags map you passed to the ctor.nskip
- The number of matches to skip over. This allows
for multiple instances of the same flag.
java.lang.IllegalArgumentException
- if too few parameters are supplied.public java.lang.String[] terminals()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |