docs: @Override
      public void visitBeanDefinitionConstructor(
          AnnotationMetadata annotationMetadata,
          boolean requiresReflection,
          Map<String, Object> argumentTypes,
          Map<String, AnnotationMetadata> argumentAnnotationMetadata,
          Map<String, Map<String, Object>> genericTypes) {
          this.constructorAnnotationMedata = annotationMetadata;
          this.constructorRequriesReflection = requiresReflection;
          this.constructorArgumentTypes = argumentTypes;
          this.constructArgumentMetadata = argumentAnnotationMetadata;
          this.constructorGenericTypes = genericTypes;
          this.constructorNewArgumentTypes = new LinkedHashMap<>(argumentTypes);
          this.beanContextArgumentIndex = argumentTypes.size();
          constructorNewArgumentTypes.put("beanContext", BeanContext.class);
          this.interceptorArgumentIndex = constructorNewArgumentTypes.size();
          constructorNewArgumentTypes.put("interceptors", Interceptor[].class);
  
      }