private static boolean scopeContainsModulesOnlyForIncrementalMake(List<TargetTypeBuildScope> scopes) {
    TargetTypeRegistry typeRegistry = null;
    for (TargetTypeBuildScope scope : scopes) {
      if (scope.getForceBuild()) {
        LOG.debug("Build scope forces compilation for targets of type " + scope.getTypeId());
        return false;
      }
      final String typeId = scope.getTypeId();
      if (isJavaModuleBuildType(typeId)) { // fast check
        continue;
      }
      if (typeRegistry == null) {
        // lazy init
        typeRegistry = TargetTypeRegistry.getInstance();
      }
      final BuildTargetType<?> targetType = typeRegistry.getTargetType(typeId);
      if (targetType != null && !(targetType instanceof ModuleInducedTargetType)) {
        if (LOG.isDebugEnabled()) {
          LOG.debug("Build scope contains target of type " + targetType + " which isn't eligible for fast up-to-date check");
        }
        return false;
      }
    }
    return true;
  }
private static boolean scopeContainsModulesOnlyForIncrementalMake(List<TargetTypeBuildScope> scopes)