File tree Expand file tree Collapse file tree 1 file changed +8
-5
lines changed
src/main/java/org/comroid/commands/impl Expand file tree Collapse file tree 1 file changed +8
-5
lines changed Original file line number Diff line number Diff line change @@ -192,20 +192,23 @@ public final Stream<AutoFillOption> autoComplete(
192192 for (var i = 0 ; i < adapters .length ; i ++) {
193193 var adapter = adapters [i ];
194194 var commandParameter = adapter .commandParameter ();
195+ var type = adapter .type ();
195196
196197 if (commandParameter != null ) {
197198 // parse user argument
198- if (getCapabilities ().contains (CommandCapability .NAMED_ARGS ) && namedArgs != null ) useArgs [i ] = namedArgs .get (
199- commandParameter .getName ());
200- else {
199+ if (getCapabilities ().contains (CommandCapability .NAMED_ARGS ) && namedArgs != null ) {
200+ useArgs [i ] = namedArgs .get (commandParameter .getName ());
201+ if (type .getTargetClass ().isEnum ())
202+ useArgs [i ] = type .parse (String .valueOf (useArgs [i ]));
203+ } else {
201204 var str = usage .getArgumentStrings ().get (commandParameter );
202- useArgs [i ] = adapter . type () .parse (str );
205+ useArgs [i ] = type .parse (str );
203206 }
204207 } else {
205208 // find contextual argument
206209 useArgs [i ] = usage .getContext ()
207210 .stream ()
208- .filter (adapter . type () .getTargetClass ()::isInstance )
211+ .filter (type .getTargetClass ()::isInstance )
209212 .findAny ()
210213 .orElse (null );
211214 }
You can’t perform that action at this time.
0 commit comments