docs: public static List<SCMDescriptor<?>> _for(@CheckForNull final Job project) {
          if(project==null)   return all();
          
          final Descriptor pd = Jenkins.getInstance().getDescriptor((Class) project.getClass());
          List<SCMDescriptor<?>> r = new ArrayList<SCMDescriptor<?>>();
          for (SCMDescriptor<?> scmDescriptor : all()) {
              if(!scmDescriptor.isApplicable(project))    continue;
  
              if (pd instanceof TopLevelItemDescriptor) {
                  TopLevelItemDescriptor apd = (TopLevelItemDescriptor) pd;
                  if(!apd.isApplicable(scmDescriptor))    continue;
              }
  
              r.add(scmDescriptor);
          }
  
          return r;
      }