code: @SuppressWarnings({ "rawtypes", "unchecked" }) // Using correct types, but wildcards fail to see that.
      private void processFields(final Object component, final Field[] fields, final Context context,
              final ContextDestroyer contextDestroyer) {
          for (final Field field : fields) {
              final com.badlogic.gdx.utils.reflect.Annotation[] annotations = getAnnotations(field);
              if (annotations == null || annotations.length == 0) {
                  continue;
              }
              for (final com.badlogic.gdx.utils.reflect.Annotation annotation : annotations) {
                  if (fieldProcessors.containsKey(annotation.getAnnotationType())) {
                      for (final AnnotationProcessor processor : fieldProcessors.get(annotation.getAnnotationType())) {
                          processor.processField(field, annotation.getAnnotation(annotation.getAnnotationType()),
                                  component, context, this, contextDestroyer);
                      }
                  }
              }
          }
      }
docs: Does the actual processing of found fields.
  
  @param component owner of the fields.
  @param fields present in one of superclasses of the component.
  @param context used to resolve dependencies.
  @param contextDestroyer used to register destruction callbacks.