mirror of
https://github.com/nsnail/spectre.console.git
synced 2025-04-16 00:42:51 +08:00
parent
b81739567b
commit
c6210f75ca
@ -63,16 +63,23 @@ namespace Spectre.Console.Cli.Internal
|
||||
}
|
||||
|
||||
var character = reader.Peek();
|
||||
if (!char.IsWhiteSpace(character))
|
||||
|
||||
// Eat whitespace
|
||||
if (char.IsWhiteSpace(character))
|
||||
{
|
||||
if (character == '-')
|
||||
{
|
||||
tokens.AddRange(ScanOptions(context, reader));
|
||||
}
|
||||
else
|
||||
{
|
||||
tokens.Add(ScanString(context, reader));
|
||||
}
|
||||
reader.Consume();
|
||||
continue;
|
||||
}
|
||||
|
||||
if (character == '-')
|
||||
{
|
||||
// Option
|
||||
tokens.AddRange(ScanOptions(context, reader));
|
||||
}
|
||||
else
|
||||
{
|
||||
// Command or argument
|
||||
tokens.Add(ScanString(context, reader));
|
||||
}
|
||||
|
||||
// Flush remaining tokens
|
||||
|
@ -51,6 +51,12 @@ namespace Spectre.Console.Cli.Internal
|
||||
return true;
|
||||
}
|
||||
|
||||
public void Consume()
|
||||
{
|
||||
EnsureNotAtEnd();
|
||||
Read();
|
||||
}
|
||||
|
||||
public void Consume(char character)
|
||||
{
|
||||
EnsureNotAtEnd();
|
||||
|
Loading…
x
Reference in New Issue
Block a user