docs: @SuppressWarnings({ "rawtypes", "unchecked" })
      private void fireProcessAnnotatedType(ProcessAnnotatedTypeImpl<?> event, Set<ContainerLifecycleEventObserverMethod<?>> observers,
              BeanManagerImpl beanManager) {
          List<Throwable> errors = new LinkedList<Throwable>();
          List<ContainerLifecycleEventObserverMethod<?>> sortedObserverMethods = new ArrayList<>(observers);
          sortedObserverMethods.sort(Comparator.comparingInt(ObserverMethod::getPriority));
          for (ContainerLifecycleEventObserverMethod observer : sortedObserverMethods) {
              // FastProcessAnnotatedTypeResolver does not consider special scope inheritance rules (see CDI - section 4.1)
              if (checkScopeInheritanceRules(event.getOriginalAnnotatedType(), observer, beanManager)) {
                  try {
                      observer.notify(event);
                  } catch (Throwable e) {
                      errors.add(e);
                  }
              }
          }
          if (!errors.isEmpty()) {
              throw new DefinitionException(errors);
          }
      }