RE: [ALTERNATE PATCH] Add a simple option parser.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,


You probably already considered and rejected the GNU argp parser. I used it before and I'd like to know reasons I should stay away from it.


Cheers,
Emil.


> -----Original Message-----
> From: git-owner@xxxxxxxxxxxxxxx 
> [mailto:git-owner@xxxxxxxxxxxxxxx] On Behalf Of Pierre Habouzit
> Sent: Friday, October 05, 2007 9:46 AM
> To: Mike Hommey
> Cc: Kristian Høgsberg; git@xxxxxxxxxxxxxxx; Junio C Hamano
> Subject: Re: [ALTERNATE PATCH] Add a simple option parser.
> 
> On Fri, Oct 05, 2007 at 02:30:14PM +0000, Mike Hommey wrote:
> > On Fri, Oct 05, 2007 at 04:25:07PM +0200, Pierre Habouzit 
> <madcoder@xxxxxxxxxx> wrote:
> > > The option parser takes argc, argv, an array of struct option
> > > and a usage string.  Each of the struct option elements 
> in the array
> > > describes a valid option, its type and a pointer to the 
> location where the
> > > value is written.  The entry point is parse_options(), 
> which scans through
> > > the given argv, and matches each option there against the 
> list of valid
> > > options.  During the scan, argv is rewritten to only contain the
> > > non-option command line arguments and the number of these 
> is returned.
> > > 
> > > Aggregation of single switches is allowed:
> > >   -rC0 is the same as -r -C 0 (supposing that -C wants an arg).
> > 
> > I like options aggregation, but I'm not sure aggregating 
> option arguments
> > is a good idea... I can't even think of an application that does it.
> 
>   You mean like `grep -A1` or `diff -u3` or `ls -w10` ?
> 
> getopt does that by default as well, so you may not have aware of it,
> but it's how things work in your system already.
> 
>   btw `ls -rw10` works, though `ls -w10r` drops the 'r' 
> silently. FWIW I
> don't, in that case, the alternate patch I propose complains 
> about "10r"
> not being a valid integer, and that's because unlike getopt, the patch
> krh proposed knows what an integer is ;)
> -- 
> ·O·  Pierre Habouzit
> ··O                                                madcoder@xxxxxxxxxx
> OOO                                                
> http://www.madism.org
-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux