@@ -46,10 +46,8 @@ bool preprocCompare(string command) =>
46
46
arguments . Skip ( 1 ) . FirstOrDefault ( ) ?? string . Empty , nameComparer ) )
47
47
: ( autoVersion && preprocCompare ( "version" ) )
48
48
? MakeNotParsed ( types , new VersionRequestedError ( ) )
49
-
50
49
: MatchVerb ( tokenizer , verbs , defaultVerb , arguments , nameComparer , ignoreValueCase , parsingCulture , autoHelp , autoVersion , nonFatalErrors ) ;
51
- } ;
52
-
50
+ }
53
51
54
52
return arguments . Any ( )
55
53
? choose ( )
@@ -96,22 +94,28 @@ private static ParserResult<object> MatchVerb(
96
94
bool autoVersion ,
97
95
IEnumerable < ErrorType > nonFatalErrors )
98
96
{
97
+ string firstArg = arguments . First ( ) ;
99
98
100
- return verbs . Any ( a => nameComparer . Equals ( a . Item1 . Name , arguments . First ( ) ) )
101
- ? InstanceBuilder . Build (
102
- Maybe . Just < Func < object > > (
103
- ( ) =>
104
- verbs . Single ( v => nameComparer . Equals ( v . Item1 . Name , arguments . First ( ) ) ) . Item2 . AutoDefault ( ) ) ,
105
- tokenizer ,
106
- arguments . Skip ( 1 ) ,
107
- nameComparer ,
108
- ignoreValueCase ,
109
- parsingCulture ,
110
- autoHelp ,
111
- autoVersion ,
112
- nonFatalErrors )
113
- : MatchDefaultVerb ( tokenizer , verbs , defaultVerb , arguments , nameComparer , ignoreValueCase , parsingCulture , autoHelp , autoVersion , nonFatalErrors ) ;
99
+ var verbUsed = verbs . FirstOrDefault ( vt =>
100
+ nameComparer . Equals ( vt . Item1 . Name , firstArg )
101
+ || vt . Item1 . Aliases . Any ( alias => nameComparer . Equals ( alias , firstArg ) )
102
+ ) ;
114
103
104
+ if ( verbUsed == default )
105
+ {
106
+ return MatchDefaultVerb ( tokenizer , verbs , defaultVerb , arguments , nameComparer , ignoreValueCase , parsingCulture , autoHelp , autoVersion , nonFatalErrors ) ;
107
+ }
108
+ return InstanceBuilder . Build (
109
+ Maybe . Just < Func < object > > (
110
+ ( ) => verbUsed . Item2 . AutoDefault ( ) ) ,
111
+ tokenizer ,
112
+ arguments . Skip ( 1 ) ,
113
+ nameComparer ,
114
+ ignoreValueCase ,
115
+ parsingCulture ,
116
+ autoHelp ,
117
+ autoVersion ,
118
+ nonFatalErrors ) ;
115
119
}
116
120
117
121
private static HelpVerbRequestedError MakeHelpVerbRequestedError (
0 commit comments