Skip to content

Commit caa33a7

Browse files
committed
remove ArgumentResult<T>
1 parent dbb29c3 commit caa33a7

File tree

3 files changed

+6
-63
lines changed

3 files changed

+6
-63
lines changed

src/System.CommandLine/Argument{T}.cs

Lines changed: 5 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -71,40 +71,25 @@ public Argument(ParseArgument<T> parse, bool isDefault = false) : this()
7171
{
7272
SetDefaultValueFactory(() =>
7373
{
74-
var argumentResult = new ArgumentResult<T>(
74+
var argumentResult = new ArgumentResult(
7575
this,
7676
null);
7777

78-
var result = parse(argumentResult);
79-
argumentResult.ValueWasSpecified = true;
80-
return result;
78+
return parse(argumentResult);
8179
});
8280
}
8381

84-
ConvertArguments = (ArgumentResult originalResult, out object value) =>
82+
ConvertArguments = (ArgumentResult argumentResult, out object value) =>
8583
{
86-
var newResult = new ArgumentResult<T>(
87-
this,
88-
originalResult.Parent);
89-
90-
foreach (var token in originalResult.Tokens)
91-
{
92-
newResult.AddToken(token);
93-
}
94-
95-
var result = parse(newResult);
84+
var result = parse(argumentResult);
9685

97-
if (string.IsNullOrEmpty(newResult.ErrorMessage))
86+
if (string.IsNullOrEmpty(argumentResult.ErrorMessage))
9887
{
99-
newResult.ValueWasSpecified = true;
10088
value = result;
101-
originalResult.Parent.Children.Remove(originalResult);
102-
originalResult.Parent.Children.Add(newResult);
10389
return true;
10490
}
10591
else
10692
{
107-
originalResult.ErrorMessage = newResult.ErrorMessage;
10893
value = default(T);
10994
return false;
11095
}

src/System.CommandLine/Parsing/ArgumentResult{T}.cs

Lines changed: 0 additions & 42 deletions
This file was deleted.

src/System.CommandLine/Parsing/ParseArgument{T}.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,5 @@ namespace System.CommandLine.Parsing
1010
/// <param name="result">The argument result.</param>
1111
/// <returns>The parsed value.</returns>
1212
/// <remarks>Validation errors can be returned by setting <see cref="SymbolResult.ErrorMessage"/>.</remarks>
13-
public delegate T ParseArgument<T>(ArgumentResult<T> result);
13+
public delegate T ParseArgument<out T>(ArgumentResult result);
1414
}

0 commit comments

Comments
 (0)