code: public <X> Set<DisposalMethod<X, ?>> resolveDisposalBeans(Set<Type> types, Set<Annotation> qualifiers, AbstractClassBean<X> declaringBean) {
          // We can always cache as this is only ever called by Weld where we avoid non-static inner classes for annotation literals
          Set<DisposalMethod<X, ?>> beans = cast(disposalMethodResolver.resolve(new ResolvableBuilder(manager).addTypes(types).addQualifiers(qualifiers).setDeclaringBean(declaringBean).create(), true));
          resolvedDisposalBeans.addAll(beans);
          return Collections.unmodifiableSet(beans);
      }
docs: Resolve the disposal method for the given producer method. Any resolved
  beans will be marked as such for the purpose of validating that all
  disposal methods are used. For internal use.
  
  @param types the types
  @param qualifiers The binding types to match
  @param declaringBean declaring bean
  @return The set of matching disposal methods