/**
  * Check if the value provided by a Skylark provider is safe (i.e. can be a TransitiveInfoProvider
  * value).
  */
 private void checkSkylarkObjectSafe(Object value) {
   if (!isSimpleSkylarkObjectSafe(value.getClass())
       // Java transitive Info Providers are accessible from Skylark.
       && !(value instanceof TransitiveInfoProvider)) {
     checkCompositeSkylarkObjectSafe(value);
   }
 }