code: protected Object convertValue(AnnotatedElement element, String value) {
          Class<?> type = getValueType(element);
          Type genericType = getValueGenericType(element);
  
          try {
              if (element.isAnnotationPresent(Use.class)) {
                  Converter converter = getConverterForElementWithUseAnnotation(element);
                  return converter.convert(value);
              }
              if (Collection.class.isAssignableFrom(type)) {
                  return manager.convert(type, getCollectionElementType(genericType), value);
              }
  
              return manager.convert(type, value);
          } catch (Exception e) {
              throw new PropertyLoaderException(String.format(
                      "Can't convert value <%s> to type <%s>", value, type), e);
          }
      }
docs: Convert given value to specified type. If given element annotated with {@link Use} annotation
  use {@link #getConverterForElementWithUseAnnotation(AnnotatedElement)} converter, otherwise
  if element has collection type convert collection and finally try to convert element
  using registered converters.