[Nice-commit] Nice/stdlib/nice/getopt gnugetopt.nice,1.9,1.10 getopt.nice,1.20,1.21
Brought to you by:
bonniot
From: <bo...@us...> - 2003-07-29 01:21:30
|
Update of /cvsroot/nice/Nice/stdlib/nice/getopt In directory sc8-pr-cvs1:/tmp/cvs-serv5056/stdlib/nice/getopt Modified Files: gnugetopt.nice getopt.nice Log Message: Syntactical improvements. Index: gnugetopt.nice =================================================================== RCS file: /cvsroot/nice/Nice/stdlib/nice/getopt/gnugetopt.nice,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** gnugetopt.nice 28 Jul 2003 19:42:24 -0000 1.9 --- gnugetopt.nice 29 Jul 2003 00:22:07 -0000 1.10 *************** *** 28,60 **** let char undefinedOption = '\0'; ! public class Getopt { ! ! private final int REQUIRE_ORDER = 1; ! private final int PERMUTE = 2; ! private final int RETURN_IN_ORDER = 3; ! ! private ?String optarg = null; ! private String nextchar = ""; ! private boolean posixly_correct = System.getProperty("gnu.posixly_correct", null) != null; ! private boolean longopt_handled = false; ! private boolean endparse = false; ! private boolean opterr = true; ! private char optopt = '?'; ! private int optind = 0; ! private int longind = 0; ! private int first_nonopt = 1; ! private int last_nonopt = 1; ! private final int ordering = 2;//== PERMUTE ! ! private String progname; ! private String[] argv; ! private String optstring = " "; ! private LongOpt[] long_options; ! private boolean long_only = false; ! //public Getopt(String progname, String[] argv, String optstring, ! // LongOpt[] long_options, boolean long_only) ! public void initGetopt() { if (optstring.length() == 0) optstring = " "; --- 28,41 ---- let char undefinedOption = '\0'; ! private let int REQUIRE_ORDER = 1; ! private let int PERMUTE = 2; ! private let int RETURN_IN_ORDER = 3; ! private let boolean posixly_correct = System.getProperty("gnu.posixly_correct") != null; ! public Getopt makeGetopt(String progname, String[] argv, String optstring, ! LongOpt[] long_options, boolean long_only = false) { + int ordering = PERMUTE; + if (optstring.length() == 0) optstring = " "; *************** *** 65,69 **** ordering = RETURN_IN_ORDER; if (optstring.length() > 1) ! this.optstring = optstring.substring(1); } else if (optstring.charAt(0) == '+') --- 46,50 ---- ordering = RETURN_IN_ORDER; if (optstring.length() > 1) ! optstring = optstring.substring(1); } else if (optstring.charAt(0) == '+') *************** *** 71,75 **** ordering = REQUIRE_ORDER; if (optstring.length() > 1) ! this.optstring = optstring.substring(1); } else if (posixly_correct) --- 52,56 ---- ordering = REQUIRE_ORDER; if (optstring.length() > 1) ! optstring = optstring.substring(1); } else if (posixly_correct) *************** *** 77,81 **** --- 58,86 ---- ordering = REQUIRE_ORDER; } + + return new Getopt(progname: progname, argv: argv, optstring: optstring, + long_options: long_options, + ordering: ordering, long_only: long_only); } + + public class Getopt { + + private ?String optarg = null; + private String nextchar = ""; + private boolean longopt_handled = false; + private boolean endparse = false; + private boolean opterr = true; + private char optopt = '?'; + private int optind = 0; + private int longind = 0; + private int first_nonopt = 1; + private int last_nonopt = 1; + private final int ordering; + + private String progname; + private String[] argv; + private String optstring = " "; + private LongOpt[] long_options; + private boolean long_only = false; Index: getopt.nice =================================================================== RCS file: /cvsroot/nice/Nice/stdlib/nice/getopt/getopt.nice,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -d -r1.20 -r1.21 *** getopt.nice 28 Jul 2003 19:42:24 -0000 1.20 --- getopt.nice 29 Jul 2003 00:22:07 -0000 1.21 *************** *** 45,51 **** for (int i = 0; i < longOpts.length; i++) longOpts[i] = longOptions.get(i); ! Getopt g = new Getopt(progname: progName, argv: args, optstring: shortOptions, long_options: elementsNotNull(longOpts)); - g.initGetopt(); // Parsing loop char c = g.getopt(); --- 45,51 ---- for (int i = 0; i < longOpts.length; i++) longOpts[i] = longOptions.get(i); ! Getopt g = makeGetopt(progname: progName, argv: args, ! optstring: shortOptions, long_options: elementsNotNull(longOpts)); // Parsing loop char c = g.getopt(); |