getopt: How does arraySep work?
    Steven Schveighoffer 
    schveiguy at gmail.com
       
    Thu Jul 16 17:40:25 UTC 2020
    
    
  
On 7/16/20 1:13 PM, Andre Pany wrote:
> On Thursday, 16 July 2020 at 05:03:36 UTC, Jon Degenhardt wrote:
>> On Wednesday, 15 July 2020 at 07:12:35 UTC, Andre Pany wrote:
>>> [...]
>>
>> An enhancement is likely to hit some corner-cases involving list 
>> termination requiring choices that are not fully generic. Any time a 
>> legal list value looks like a legal option. Perhaps the most important 
>> case is single digit numeric options like '-1', '-2'. These are legal 
>> short form options, and there are programs that use them. They are 
>> also somewhat common numeric values to include in command lines inputs.
>>
>> [...]
> 
> My naive implementation would be that any dash would stop the list of 
> multiple values. If you want to have a value containing a space or a 
> dash, you enclose it with double quotes in the terminal.
Enclose with double quotes in the terminal does nothing:
myapp --modelicalibs "file-a.mo" "file-b.mo"
will give you EXACTLY the same string[] args as:
myapp --modelicalibs file-a.mo file-b.mo
I think Jon's point is that it's difficult to distinguish where an array 
list ends if you get the parameters as separate items.
Like:
myapp --numbers 1 2 3 -5 -6
Is that numbers=> [1, 2, 3, -5, -6]
or is it numbers=> [1, 2, 3], 5 => true, 6 => true
This is probably why the code doesn't support that.
-Steve
    
    
More information about the Digitalmars-d-learn
mailing list