| 
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Objectnet.wasamon.mjlib.util.GetOpt
public class GetOpt
引数の解析を行い、その結果を保持するクラス。
 GetOpt("hvf:", "prefix:", args)などとして利用
 最初の引数で一文字のオプションを、第二引数ではロングオプションを設定。
 ":"を末尾につけることで、そのオプションは引数をとることができる。
 この引数は空白または"="で識別される。
 また、オプションに"::"をつけると、その後の文字列すべてを、そのオプションの引数として処理する。
 - や -- の次、また、-ではじまらない文字列からを引数として保持する。
| 入れ子のクラスの概要 | |
|---|---|
(package private)  class | 
GetOpt.AssocPair
名前と値の組を表わすオブジェクト  | 
| フィールドの概要 | |
|---|---|
private  java.lang.String[] | 
args
 | 
private  NamedArrayList | 
opt_flag
引数つきではないオプションフラグのリスト  | 
private  NamedArrayList | 
opt_with_arg
引数つきのオプションを保持するのリスト  | 
private  NamedObject | 
opt_with_arg_rest
 | 
private  NamedArrayList | 
opts
 | 
private  boolean | 
result
 | 
private  java.util.ArrayList | 
unknown
解析の結果不明だったリスト  | 
| コンストラクタの概要 | |
|---|---|
GetOpt(java.lang.String sp,
       java.lang.String lps,
       java.lang.String[] ptn)
コンストラクタ  | 
|
GetOpt(java.lang.String sp,
       java.lang.String lps,
       java.lang.String[] ptn,
       boolean flag)
デバッグ用コンストラクタ  | 
|
GetOpt(java.lang.String sp,
       java.lang.String lps,
       java.lang.String[] ptn,
       int offset)
コンストラクタ  | 
|
| メソッドの概要 | |
|---|---|
private  int | 
analy_longopt(java.lang.String ptn,
              java.lang.String[] arg,
              int offset)
引数つきオプションの解析 hoge=fefe または hoge fefe をオプション hoge と、その引数 fefe と解析  | 
private  int | 
analy_shortopt(java.lang.String ptn,
               java.lang.String[] arg,
               int offset)
パターンに該当するフラグオプションがるかどうか  | 
private  void | 
analyze(java.lang.String[] ptn,
        int offset)
引数すべてに対し指定したパターンがあるかどうか判定する  | 
 boolean | 
flag(java.lang.String key)
オプションが指定されていたかどうかを判定する  | 
private  java.lang.String[] | 
getAllOpt()
すべてのオプションを配列で得る。  | 
 java.lang.String[] | 
getArgs()
すべての引数を配列にして返す  | 
 java.lang.String | 
getValue(java.lang.String key)
オプションで指定されていた値を取得する。  | 
 boolean | 
isSuccess()
 | 
static void | 
main(java.lang.String[] args)
 | 
private  boolean | 
makeOptList(java.lang.String sp,
            java.lang.String[] lp)
与えられたショートオプションとロングオプションから 引数解析のためのリストを生成する  | 
private  void | 
print_opt_flag()
 | 
private  void | 
print_opt_with_arg()
 | 
private  java.lang.String[] | 
setArgs(java.lang.String[] ptn,
        int offset)
パタンのうちoffset以降を配列に格納して返す  | 
| クラス java.lang.Object から継承されたメソッド | 
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
| フィールドの詳細 | 
|---|
private java.lang.String[] args
private NamedArrayList opts
private NamedArrayList opt_with_arg
private NamedArrayList opt_flag
private java.util.ArrayList unknown
private NamedObject opt_with_arg_rest
private boolean result
| コンストラクタの詳細 | 
|---|
public GetOpt(java.lang.String sp,
              java.lang.String lps,
              java.lang.String[] ptn)
sp - 解析したい一文字オプションの連続(-vとか)lps - 解析したいロングオプションのcommma separate羅列ptn - 解析すべき文字列の配列
public GetOpt(java.lang.String sp,
              java.lang.String lps,
              java.lang.String[] ptn,
              int offset)
sp - 解析したい一文字オプションの連続(-vとか)lps - 解析したいロングオプションのcommma separate羅列ptn - 解析すべき文字列の配列offset - 解析すべき文字のオフセット
public GetOpt(java.lang.String sp,
              java.lang.String lps,
              java.lang.String[] ptn,
              boolean flag)
| メソッドの詳細 | 
|---|
private void analyze(java.lang.String[] ptn,
                     int offset)
ptn - 引数の配列offset - 解析する引数のオフセット
 --todo もっといいアルゴリズムに
private boolean makeOptList(java.lang.String sp,
                            java.lang.String[] lp)
private int analy_shortopt(java.lang.String ptn,
                           java.lang.String[] arg,
                           int offset)
ptn - パターン文字列
private int analy_longopt(java.lang.String ptn,
                          java.lang.String[] arg,
                          int offset)
ptn - ためすパターンarg - オプション字列の配列(引数かもしれないから)offset - 現在のパタンの配列中のオフセット
public boolean isSuccess()
public boolean flag(java.lang.String key)
key - 検索するオプション名
public java.lang.String getValue(java.lang.String key)
                          throws GetOptException
key - 検索するオプション名
GetOptException - 与えられた文字列のオプションがない場合private java.lang.String[] getAllOpt()
public java.lang.String[] getArgs()
private java.lang.String[] setArgs(java.lang.String[] ptn,
                                   int offset)
ptn - パタンoffset - オフセット
private void print_opt_flag()
private void print_opt_with_arg()
public static void main(java.lang.String[] args)
                 throws java.lang.Exception
java.lang.Exception
  | 
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||