aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/skyframe/AspectValue.java
diff options
context:
space:
mode:
authorGravatar janakr <janakr@google.com>2018-03-23 15:32:37 -0700
committerGravatar Copybara-Service <copybara-piper@google.com>2018-03-23 15:34:47 -0700
commit9bad84084b9fa05e2eea7093611f0a414bf63b83 (patch)
treea8a6693531e3fa79dda60cde73f73d66a4426709 /src/main/java/com/google/devtools/build/lib/skyframe/AspectValue.java
parentf873447a073c8f7374e9f8a74ae42784df3f80e1 (diff)
@AutoCodec AspectValue.
PiperOrigin-RevId: 190285465
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/skyframe/AspectValue.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/skyframe/AspectValue.java28
1 files changed, 25 insertions, 3 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/AspectValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/AspectValue.java
index 116d186c39..d58f350594 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/AspectValue.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/AspectValue.java
@@ -18,8 +18,11 @@ import com.google.common.base.MoreObjects;
import com.google.common.base.Objects;
import com.google.common.base.Preconditions;
import com.google.common.collect.ImmutableList;
+import com.google.common.collect.ImmutableMap;
import com.google.common.collect.Interner;
+import com.google.devtools.build.lib.actions.ActionAnalysisMetadata;
import com.google.devtools.build.lib.actions.Actions.GeneratingActions;
+import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.actions.BasicActionLookupValue;
import com.google.devtools.build.lib.analysis.ConfiguredAspect;
import com.google.devtools.build.lib.analysis.config.BuildConfiguration;
@@ -37,11 +40,11 @@ import com.google.devtools.build.lib.skyframe.ConfiguredTargetKey.KeyAndHost;
import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
import com.google.devtools.build.lib.syntax.SkylarkImport;
import com.google.devtools.build.skyframe.SkyFunctionName;
+import java.util.ArrayList;
import javax.annotation.Nullable;
-/**
- * An aspect in the context of the Skyframe graph.
- */
+/** An aspect in the context of the Skyframe graph. */
+@AutoCodec
public final class AspectValue extends BasicActionLookupValue {
/**
@@ -432,6 +435,25 @@ public final class AspectValue extends BasicActionLookupValue {
// May be null either after clearing or because transitive packages are not tracked.
@Nullable private NestedSet<Package> transitivePackagesForPackageRootResolution;
+ @AutoCodec.Instantiator
+ @AutoCodec.VisibleForSerialization
+ AspectValue(
+ AspectKey key,
+ Aspect aspect,
+ Label label,
+ Location location,
+ ConfiguredAspect configuredAspect,
+ ArrayList<ActionAnalysisMetadata> actions,
+ ImmutableMap<Artifact, Integer> generatingActionIndex) {
+ super(actions, generatingActionIndex, /*removeActionsAfterEvaluation=*/ false);
+ this.label = Preconditions.checkNotNull(label, actions);
+ this.aspect = Preconditions.checkNotNull(aspect, label);
+ this.location = Preconditions.checkNotNull(location, label);
+ this.key = Preconditions.checkNotNull(key, label);
+ this.configuredAspect = Preconditions.checkNotNull(configuredAspect, label);
+ this.transitivePackagesForPackageRootResolution = null;
+ }
+
public AspectValue(
AspectKey key,
Aspect aspect,