Return-Path: Delivered-To: apmail-jakarta-commons-dev-archive@apache.org Received: (qmail 71302 invoked from network); 6 Feb 2003 23:23:39 -0000 Received: from exchange.sun.com (192.18.33.10) by daedalus.apache.org with SMTP; 6 Feb 2003 23:23:39 -0000 Received: (qmail 18633 invoked by uid 97); 6 Feb 2003 23:25:12 -0000 Delivered-To: qmlist-jakarta-archive-commons-dev@nagoya.betaversion.org Received: (qmail 18626 invoked from network); 6 Feb 2003 23:25:12 -0000 Received: from daedalus.apache.org (HELO apache.org) (208.185.179.12) by nagoya.betaversion.org with SMTP; 6 Feb 2003 23:25:12 -0000 Received: (qmail 70919 invoked by uid 500); 6 Feb 2003 23:23:36 -0000 Mailing-List: contact commons-dev-help@jakarta.apache.org; run by ezmlm Precedence: bulk List-Unsubscribe: List-Subscribe: List-Help: List-Post: List-Id: "Jakarta Commons Developers List" Reply-To: "Jakarta Commons Developers List" Delivered-To: mailing list commons-dev@jakarta.apache.org Received: (qmail 70908 invoked from network); 6 Feb 2003 23:23:35 -0000 Received: from a17-250-248-97.apple.com (HELO smtpout.mac.com) (17.250.248.97) by daedalus.apache.org with SMTP; 6 Feb 2003 23:23:35 -0000 Received: from asmtp02.mac.com (asmtp02-qfe3 [10.13.10.66]) by smtpout.mac.com (Xserve/MantshX 2.0) with ESMTP id h16NNgXc007942 for ; Thu, 6 Feb 2003 15:23:42 -0800 (PST) Received: from mac.com ([159.134.168.97]) by asmtp02.mac.com (Netscape Messaging Server 4.15) with ESMTP id H9WUBH00.R85 for ; Thu, 6 Feb 2003 15:23:41 -0800 Date: Thu, 6 Feb 2003 23:25:13 +0000 Mime-Version: 1.0 (Apple Message framework v551) Content-Type: text/plain; charset=US-ASCII; format=flowed Subject: [CLI] char versus String for option name? From: John Keyes To: commons-dev Content-Transfer-Encoding: 7bit Message-Id: <3DCE2E1E-3A2A-11D7-977C-00039379521C@mac.com> X-Mailer: Apple Mail (2.551) X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N I have done some more work on the class diagram ( http://www.integralsource.com/cli/datatype2.gif ). As you can see by supporting the choice of 'char' and 'String' as the Option name the design is much more complex. Wouldn't it be much better to drop support for 'char'? This would simplify the design by reducing the number of classes: . No need for Posix/GnuOption just OptionImpl . No need for Posix/GnuArgument just ArgumentImpl . reduced number of methods on CommandLine (API not finalized) . reduced number of methods on the builder (not specified yet but should be very similar to the current approach). Do people think that dropping support for 'char' would cause much pain for people? If a migration script is provided that will update code that uses the char to use String would that make the pain acceptable? Cheers, -John K - - - - - - - - - - - - - - - - - - - - - - - Jakarta Commons CLI http://jakarta.apache.org/commons/cli --------------------------------------------------------------------- To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org For additional commands, e-mail: commons-dev-help@jakarta.apache.org