Rename Rule/RuleClass.hasBinaryOutput to outputsToBindir
This is consistent with the naming of genrule.output_to_bindir (and the output_to_genfiles parameter of rule). hasBinaryOutput is also a confusing name because hasBinaryOutput can be true even if a target does not have an executable output, or even if it does not have _any_ output. This is commonly the case since Starlark-defined rules output to bin by default.
RELNOTES: None.
PiperOrigin-RevId: 374424142
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/RuleContext.java b/src/main/java/com/google/devtools/build/lib/analysis/RuleContext.java
index 3beb240..4ddd2fc 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/RuleContext.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/RuleContext.java
@@ -763,7 +763,7 @@
*/
@Override
public ArtifactRoot getBinOrGenfilesDirectory() {
- return rule.hasBinaryOutput()
+ return rule.outputsToBindir()
? getConfiguration().getBinDirectory(getLabel().getRepository())
: getConfiguration().getGenfilesDirectory(getLabel().getRepository());
}