protected @Nullable ParameterValue getInjectedValue(
            final @NonNull Parameter parameter,
            final @NonNull CommandContext<C> context
    ) {
        final Optional<?> value = this.injectorRegistry.getInjectable(
                TypeToken.get(parameter.getParameterizedType()),
                context,
                AnnotationAccessor.of(AnnotationAccessor.of(parameter), this.annotationAccessor())
        );
        if (value.isPresent()) {
            return ParameterValue.of(parameter, value.get());
        }
        if (parameter.getType() == String.class) {
            return ParameterValue.of(parameter, parameter.getName());
        }
        return null;
    }
Returns the injected value for the given {@code parameter}, if possible.

@param parameter parameter to get value for
@param context   the command context
@return the value, or {@code null}
cloud-annotations/src/main/java/org/incendo/cloud/annotations/method/AnnotatedMethodHandler.java