aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/analysis/AbstractConfiguredTarget.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/analysis/AbstractConfiguredTarget.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/AbstractConfiguredTarget.java12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/AbstractConfiguredTarget.java b/src/main/java/com/google/devtools/build/lib/analysis/AbstractConfiguredTarget.java
index 8b197298fb..0096575da0 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/AbstractConfiguredTarget.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/AbstractConfiguredTarget.java
@@ -26,6 +26,7 @@ import com.google.devtools.build.lib.packages.ClassObjectConstructor;
import com.google.devtools.build.lib.packages.PackageSpecification;
import com.google.devtools.build.lib.packages.SkylarkClassObject;
import com.google.devtools.build.lib.packages.Target;
+import com.google.devtools.build.lib.skylarkinterface.SkylarkPrinter;
import com.google.devtools.build.lib.syntax.ClassObject;
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.EvalUtils;
@@ -210,4 +211,15 @@ public abstract class AbstractConfiguredTarget
/** Implement in subclasses to get a skylark provider for a given {@code providerKey}. */
protected abstract Object rawGetSkylarkProvider(String providerKey);
+ @Override
+ public boolean isImmutable() {
+ return false;
+ }
+
+ // All main target classes must override this method to provide more descriptive strings.
+ // Exceptions are currently EnvironmentGroupConfiguredTarget and PackageGroupConfiguredTarget.
+ @Override
+ public void repr(SkylarkPrinter printer) {
+ printer.append("<unknown target " + getTarget().getLabel() + ">");
+ }
}