@Override
  public @NotNull <R extends BuildRootDescriptor> List<R> getTempTargetRoots(@NotNull BuildTarget<R> target, @NotNull CompileContext context) {
    final Map<BuildTarget<?>, List<? extends BuildRootDescriptor>> contextMap = TEMP_TARGET_ROOTS_MAP.get(context);
    //noinspection unchecked
    final List<R> rootList = contextMap != null? (List<R>)contextMap.get(target) : null;
    return rootList != null ? rootList : Collections.emptyList();
  }
@Override
  public @NotNull <R extends BuildRootDescriptor> List<R> getTempTargetRoots(@NotNull BuildTarget<R> target, @NotNull CompileContext context)