@Override
    public final int compareTo(final @NonNull CommandComponent<C> other) {
        if (this.type() == ComponentType.LITERAL) {
            if (other.type() == ComponentType.LITERAL) {
                return this.name().compareTo(other.name());
            }
            return -1;
        }
        if (other.type() == ComponentType.LITERAL) {
            return 1;
        }
        return 0;
    }
Preprocess command input.

<p>This will immediately forward any failed component parse results.
If none fails, a {@code true} result will be returned.</p>

@param context Command context
@param input   Remaining command input. None will be popped
@return parsing error, or argument containing {@code true}
cloud-core/src/main/java/org/incendo/cloud/component/CommandComponent.java