aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorGravatar dannark <dannark@google.com>2018-03-04 06:47:47 -0800
committerGravatar Copybara-Service <copybara-piper@google.com>2018-03-04 06:49:19 -0800
commit96145511b34a2d7be834e3eb05927674e875c813 (patch)
tree07a7467144b02cdf2c487797daa2b99172d44833 /src
parent76de1ad3af6297cbc7c34054dd4340e02750a712 (diff)
Automated rollback of commit eee53d3a33dde441f7e7adaecde81ef2d3db7c1b.
*** Reason for rollback *** breaks Blaze_CorpTest *** Original change description *** @AutoCodec ConfiguredTargetValue. PiperOrigin-RevId: 187783702
Diffstat (limited to 'src')
-rw-r--r--src/main/java/com/google/devtools/build/lib/actions/ActionLookupValue.java20
-rw-r--r--src/main/java/com/google/devtools/build/lib/actions/FailAction.java6
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/SourceManifestAction.java27
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/actions/SymlinkAction.java5
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/configuredtargets/RuleConfiguredTarget.java2
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/constraints/EnvironmentCollection.java10
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/constraints/SupportedEnvironments.java6
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/extra/ExtraActionInfoFileWriteAction.java9
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/platform/ToolchainInfo.java8
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/test/BaselineCoverageAction.java14
-rw-r--r--src/main/java/com/google/devtools/build/lib/packages/NativeProvider.java18
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/AliasConfiguredTarget.java25
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/cpp/CcLinkParams.java6
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/cpp/CcSkylarkApiProvider.java2
-rw-r--r--src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetValue.java22
-rw-r--r--src/main/java/com/google/devtools/build/lib/skyframe/serialization/BooleanCodec.java40
-rw-r--r--src/main/java/com/google/devtools/build/lib/util/Pair.java6
17 files changed, 59 insertions, 167 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/actions/ActionLookupValue.java b/src/main/java/com/google/devtools/build/lib/actions/ActionLookupValue.java
index bbc34931b9..510b0b1f5f 100644
--- a/src/main/java/com/google/devtools/build/lib/actions/ActionLookupValue.java
+++ b/src/main/java/com/google/devtools/build/lib/actions/ActionLookupValue.java
@@ -22,7 +22,6 @@ import com.google.common.collect.ImmutableMap;
import com.google.common.collect.Maps;
import com.google.devtools.build.lib.cmdline.Label;
import com.google.devtools.build.lib.concurrent.ThreadSafety.ThreadSafe;
-import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization;
import com.google.devtools.build.skyframe.SkyKey;
import com.google.devtools.build.skyframe.SkyValue;
import java.util.ArrayList;
@@ -37,7 +36,7 @@ import javax.annotation.Nullable;
*/
public class ActionLookupValue implements SkyValue {
protected final List<ActionAnalysisMetadata> actions;
- @VisibleForSerialization protected final ImmutableMap<Artifact, Integer> generatingActionIndex;
+ private final ImmutableMap<Artifact, Integer> generatingActionIndex;
protected ActionLookupValue(
ActionAnalysisMetadata action,
@@ -48,17 +47,12 @@ public class ActionLookupValue implements SkyValue {
@VisibleForTesting
public ActionLookupValue(
Actions.GeneratingActions generatingActions, boolean removeActionsAfterEvaluation) {
- this(
- removeActionsAfterEvaluation
- ? new ArrayList<>(generatingActions.getActions())
- : ImmutableList.copyOf(generatingActions.getActions()),
- generatingActions.getGeneratingActionIndex());
- }
-
- protected ActionLookupValue(
- List<ActionAnalysisMetadata> actions, ImmutableMap<Artifact, Integer> generatingActionIndex) {
- this.actions = actions;
- this.generatingActionIndex = generatingActionIndex;
+ if (removeActionsAfterEvaluation) {
+ this.actions = new ArrayList<>(generatingActions.getActions());
+ } else {
+ this.actions = ImmutableList.copyOf(generatingActions.getActions());
+ }
+ this.generatingActionIndex = generatingActions.getGeneratingActionIndex();
}
/**
diff --git a/src/main/java/com/google/devtools/build/lib/actions/FailAction.java b/src/main/java/com/google/devtools/build/lib/actions/FailAction.java
index eccc4ee2d8..a61d2b2f50 100644
--- a/src/main/java/com/google/devtools/build/lib/actions/FailAction.java
+++ b/src/main/java/com/google/devtools/build/lib/actions/FailAction.java
@@ -16,14 +16,12 @@ package com.google.devtools.build.lib.actions;
import com.google.common.collect.ImmutableList;
import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable;
-import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
import com.google.devtools.build.lib.util.Fingerprint;
/**
- * FailAction is an Action that always fails to execute. (Used as scaffolding for rules we haven't
- * yet implemented. Also useful for testing.)
+ * FailAction is an Action that always fails to execute. (Used as scaffolding
+ * for rules we haven't yet implemented. Also useful for testing.)
*/
-@AutoCodec
@Immutable
public final class FailAction extends AbstractAction {
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/SourceManifestAction.java b/src/main/java/com/google/devtools/build/lib/analysis/SourceManifestAction.java
index a2ba6867df..2fc824a10f 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/SourceManifestAction.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/SourceManifestAction.java
@@ -24,8 +24,6 @@ import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.analysis.actions.AbstractFileWriteAction;
import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable;
import com.google.devtools.build.lib.events.EventHandler;
-import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
-import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization;
import com.google.devtools.build.lib.util.Fingerprint;
import com.google.devtools.build.lib.vfs.PathFragment;
import java.io.BufferedWriter;
@@ -42,15 +40,15 @@ import java.util.Map;
import javax.annotation.Nullable;
/**
- * Action to create a manifest of input files for processing by a subsequent build step (e.g.
- * runfiles symlinking or archive building).
+ * Action to create a manifest of input files for processing by a subsequent
+ * build step (e.g. runfiles symlinking or archive building).
*
- * <p>The manifest's format is specifiable by {@link ManifestType}, in accordance with the needs of
- * the calling functionality.
+ * <p>The manifest's format is specifiable by {@link ManifestType}, in
+ * accordance with the needs of the calling functionality.
*
- * <p>Note that this action carefully avoids building the manifest content in memory.
+ * <p>Note that this action carefully avoids building the manifest content in
+ * memory.
*/
-@AutoCodec
@Immutable // if all ManifestWriter implementations are immutable
public final class SourceManifestAction extends AbstractFileWriteAction {
@@ -95,18 +93,17 @@ public final class SourceManifestAction extends AbstractFileWriteAction {
private final Runfiles runfiles;
/**
- * Creates a new AbstractSourceManifestAction instance using latin1 encoding to write the manifest
- * file and with a specified root path for manifest entries.
+ * Creates a new AbstractSourceManifestAction instance using latin1 encoding
+ * to write the manifest file and with a specified root path for manifest entries.
*
* @param manifestWriter the strategy to use to write manifest entries
* @param owner the action owner
- * @param primaryOutput the file to which to write the manifest
+ * @param output the file to which to write the manifest
* @param runfiles runfiles
*/
- @VisibleForSerialization
- SourceManifestAction(
- ManifestWriter manifestWriter, ActionOwner owner, Artifact primaryOutput, Runfiles runfiles) {
- super(owner, getDependencies(runfiles), primaryOutput, false);
+ private SourceManifestAction(ManifestWriter manifestWriter, ActionOwner owner, Artifact output,
+ Runfiles runfiles) {
+ super(owner, getDependencies(runfiles), output, false);
this.manifestWriter = manifestWriter;
this.runfiles = runfiles;
}
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/actions/SymlinkAction.java b/src/main/java/com/google/devtools/build/lib/analysis/actions/SymlinkAction.java
index 13b7aaaead..d0aba38bdc 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/actions/SymlinkAction.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/actions/SymlinkAction.java
@@ -76,10 +76,7 @@ public class SymlinkAction extends AbstractAction {
Artifact primaryInput,
Artifact primaryOutput,
String progressMessage) {
- super(
- owner,
- primaryInput != null ? ImmutableList.of(primaryInput) : Artifact.NO_ARTIFACTS,
- ImmutableList.of(primaryOutput));
+ super(owner, ImmutableList.of(primaryInput), ImmutableList.of(primaryOutput));
this.inputPath = inputPath;
this.progressMessage = progressMessage;
}
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/configuredtargets/RuleConfiguredTarget.java b/src/main/java/com/google/devtools/build/lib/analysis/configuredtargets/RuleConfiguredTarget.java
index 770fee7edd..372ec570e1 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/configuredtargets/RuleConfiguredTarget.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/configuredtargets/RuleConfiguredTarget.java
@@ -41,7 +41,6 @@ import com.google.devtools.build.lib.packages.OutputFile;
import com.google.devtools.build.lib.packages.PackageSpecification.PackageGroupContents;
import com.google.devtools.build.lib.packages.Provider;
import com.google.devtools.build.lib.skyframe.ConfiguredTargetKey;
-import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.Instantiator;
import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization;
import com.google.devtools.build.lib.skylarkinterface.SkylarkPrinter;
@@ -56,7 +55,6 @@ import javax.annotation.Nullable;
* analyzed rule. For more information about how analysis works, see {@link
* com.google.devtools.build.lib.analysis.RuleConfiguredTargetFactory}.
*/
-@AutoCodec
public final class RuleConfiguredTarget extends AbstractConfiguredTarget {
/**
* The configuration transition for an attribute through which a prerequisite
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/constraints/EnvironmentCollection.java b/src/main/java/com/google/devtools/build/lib/analysis/constraints/EnvironmentCollection.java
index c1ce9f0a1a..7dc850e254 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/constraints/EnvironmentCollection.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/constraints/EnvironmentCollection.java
@@ -21,18 +21,16 @@ import com.google.common.collect.ImmutableSet;
import com.google.devtools.build.lib.cmdline.Label;
import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable;
import com.google.devtools.build.lib.packages.EnvironmentLabels;
-import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
-import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization;
import java.util.Map;
-/** Contains a set of {@link Environment} labels and their associated groups. */
-@AutoCodec
+/**
+ * Contains a set of {@link Environment} labels and their associated groups.
+ */
@Immutable
public class EnvironmentCollection {
private final ImmutableMultimap<EnvironmentLabels, Label> map;
- @VisibleForSerialization
- EnvironmentCollection(ImmutableMultimap<EnvironmentLabels, Label> map) {
+ private EnvironmentCollection(ImmutableMultimap<EnvironmentLabels, Label> map) {
this.map = map;
}
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/constraints/SupportedEnvironments.java b/src/main/java/com/google/devtools/build/lib/analysis/constraints/SupportedEnvironments.java
index c1eaac7419..1b89bda6ba 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/constraints/SupportedEnvironments.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/constraints/SupportedEnvironments.java
@@ -17,11 +17,11 @@ package com.google.devtools.build.lib.analysis.constraints;
import com.google.common.collect.ImmutableMap;
import com.google.devtools.build.lib.analysis.LabelAndLocation;
import com.google.devtools.build.lib.cmdline.Label;
-import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
import java.util.Map;
-/** Standard {@link SupportedEnvironmentsProvider} implementation. */
-@AutoCodec
+/**
+ * Standard {@link SupportedEnvironmentsProvider} implementation.
+ */
public class SupportedEnvironments implements SupportedEnvironmentsProvider {
private final EnvironmentCollection staticEnvironments;
private final EnvironmentCollection refinedEnvironments;
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/extra/ExtraActionInfoFileWriteAction.java b/src/main/java/com/google/devtools/build/lib/analysis/extra/ExtraActionInfoFileWriteAction.java
index 4b2ef4bacb..d2f080ee2a 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/extra/ExtraActionInfoFileWriteAction.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/extra/ExtraActionInfoFileWriteAction.java
@@ -26,7 +26,6 @@ import com.google.devtools.build.lib.actions.UserExecException;
import com.google.devtools.build.lib.analysis.actions.AbstractFileWriteAction;
import com.google.devtools.build.lib.analysis.actions.ProtoDeterministicWriter;
import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable;
-import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
import com.google.devtools.build.lib.util.Fingerprint;
import java.io.IOException;
@@ -35,17 +34,17 @@ import java.io.IOException;
* .xa file for use by an extra action. This can only be done at execution time because actions may
* store information only known at execution time into the protocol buffer.
*/
-@AutoCodec
@Immutable // if shadowedAction is immutable
public final class ExtraActionInfoFileWriteAction extends AbstractFileWriteAction {
private static final String UUID = "1759f81d-e72e-477d-b182-c4532bdbaeeb";
private final Action shadowedAction;
- ExtraActionInfoFileWriteAction(ActionOwner owner, Artifact primaryOutput, Action shadowedAction) {
- super(owner, ImmutableList.<Artifact>of(), primaryOutput, false);
+ ExtraActionInfoFileWriteAction(ActionOwner owner, Artifact extraActionInfoFile,
+ Action shadowedAction) {
+ super(owner, ImmutableList.<Artifact>of(), extraActionInfoFile, false);
- this.shadowedAction = Preconditions.checkNotNull(shadowedAction, primaryOutput);
+ this.shadowedAction = Preconditions.checkNotNull(shadowedAction, extraActionInfoFile);
}
@Override
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/platform/ToolchainInfo.java b/src/main/java/com/google/devtools/build/lib/analysis/platform/ToolchainInfo.java
index f6601af480..0768a8b624 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/platform/ToolchainInfo.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/platform/ToolchainInfo.java
@@ -21,7 +21,6 @@ import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable;
import com.google.devtools.build.lib.events.Location;
import com.google.devtools.build.lib.packages.NativeInfo;
import com.google.devtools.build.lib.packages.NativeProvider;
-import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory;
import com.google.devtools.build.lib.syntax.EvalException;
@@ -39,7 +38,6 @@ import java.util.Map;
doc = "Provides access to data about a specific toolchain.",
category = SkylarkModuleCategory.PROVIDER
)
-@AutoCodec
@Immutable
public class ToolchainInfo extends NativeInfo {
@@ -59,7 +57,6 @@ public class ToolchainInfo extends NativeInfo {
/*types=*/ ImmutableList.<SkylarkType>of(SkylarkType.DICT));
/** Skylark constructor and identifier for this provider. */
- @AutoCodec
public static final NativeProvider<ToolchainInfo> PROVIDER =
new NativeProvider<ToolchainInfo>(ToolchainInfo.class, SKYLARK_NAME, SIGNATURE) {
@Override
@@ -71,9 +68,8 @@ public class ToolchainInfo extends NativeInfo {
}
};
- @AutoCodec.Instantiator
- public ToolchainInfo(Map<String, Object> values, Location location) {
- super(PROVIDER, ImmutableMap.copyOf(values), location);
+ public ToolchainInfo(Map<String, Object> toolchainData, Location loc) {
+ super(PROVIDER, ImmutableMap.copyOf(toolchainData), loc);
}
public static ToolchainInfo create(Map<String, Object> toolchainData) {
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/test/BaselineCoverageAction.java b/src/main/java/com/google/devtools/build/lib/analysis/test/BaselineCoverageAction.java
index 9066595769..b400440ca0 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/test/BaselineCoverageAction.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/test/BaselineCoverageAction.java
@@ -30,8 +30,6 @@ import com.google.devtools.build.lib.collect.nestedset.NestedSet;
import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder;
import com.google.devtools.build.lib.collect.nestedset.Order;
import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable;
-import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
-import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization;
import com.google.devtools.build.lib.util.Fingerprint;
import com.google.devtools.build.lib.vfs.PathFragment;
import java.io.IOException;
@@ -40,18 +38,18 @@ import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;
-/** Generates baseline (empty) coverage for the given non-test target. */
+/**
+ * Generates baseline (empty) coverage for the given non-test target.
+ */
@VisibleForTesting
-@AutoCodec
@Immutable
public final class BaselineCoverageAction extends AbstractFileWriteAction
implements NotifyOnActionCacheHit {
private final NestedSet<Artifact> instrumentedFiles;
- @VisibleForSerialization
- BaselineCoverageAction(
- ActionOwner owner, NestedSet<Artifact> instrumentedFiles, Artifact primaryOutput) {
- super(owner, ImmutableList.<Artifact>of(), primaryOutput, false);
+ private BaselineCoverageAction(
+ ActionOwner owner, NestedSet<Artifact> instrumentedFiles, Artifact output) {
+ super(owner, ImmutableList.<Artifact>of(), output, false);
this.instrumentedFiles = instrumentedFiles;
}
diff --git a/src/main/java/com/google/devtools/build/lib/packages/NativeProvider.java b/src/main/java/com/google/devtools/build/lib/packages/NativeProvider.java
index 3aae40312f..30b7ae8abf 100644
--- a/src/main/java/com/google/devtools/build/lib/packages/NativeProvider.java
+++ b/src/main/java/com/google/devtools/build/lib/packages/NativeProvider.java
@@ -16,8 +16,6 @@ package com.google.devtools.build.lib.packages;
import com.google.common.collect.ImmutableMap;
import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable;
import com.google.devtools.build.lib.events.Location;
-import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
-import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization;
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.FunctionSignature;
import com.google.devtools.build.lib.syntax.SkylarkType;
@@ -110,14 +108,12 @@ public abstract class NativeProvider<V extends Info> extends Provider {
this(clazz, name, SIGNATURE);
}
- @SuppressWarnings("unchecked")
protected NativeProvider(
Class<V> valueClass,
String name,
FunctionSignature.WithValues<Object, SkylarkType> signature) {
super(name, signature, Location.BUILTIN);
- Class<? extends NativeProvider<?>> clazz = (Class<? extends NativeProvider<?>>) getClass();
- key = new NativeKey(name, clazz);
+ key = new NativeKey(name, getClass());
this.valueClass = valueClass;
errorMessageFormatForUnknownField = String.format("'%s' object has no attribute '%%s'", name);
}
@@ -174,12 +170,10 @@ public abstract class NativeProvider<V extends Info> extends Provider {
return Pair.of(key.name, key.aClass.getName());
}
- @SuppressWarnings("unchecked")
public static NativeKey getNativeKeyFromSerializedRepresentation(Pair<String, String> serialized)
throws ClassNotFoundException {
- Class<? extends NativeProvider<?>> aClass =
- (Class<? extends NativeProvider<?>>)
- Class.forName(serialized.second).asSubclass(NativeProvider.class);
+ Class<? extends NativeProvider> aClass =
+ Class.forName(serialized.second).asSubclass(NativeProvider.class);
return new NativeKey(serialized.first, aClass);
}
@@ -188,14 +182,12 @@ public abstract class NativeProvider<V extends Info> extends Provider {
*
* <p>Just a wrapper around its class.
*/
- @AutoCodec
@Immutable
public static final class NativeKey extends Key {
private final String name;
- private final Class<? extends NativeProvider<?>> aClass;
+ private final Class<? extends NativeProvider> aClass;
- @VisibleForSerialization
- NativeKey(String name, Class<? extends NativeProvider<?>> aClass) {
+ private NativeKey(String name, Class<? extends NativeProvider> aClass) {
this.name = name;
this.aClass = aClass;
}
diff --git a/src/main/java/com/google/devtools/build/lib/rules/AliasConfiguredTarget.java b/src/main/java/com/google/devtools/build/lib/rules/AliasConfiguredTarget.java
index 41558655f3..d591aa2dc1 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/AliasConfiguredTarget.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/AliasConfiguredTarget.java
@@ -27,8 +27,6 @@ import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable;
import com.google.devtools.build.lib.events.Location;
import com.google.devtools.build.lib.packages.Info;
import com.google.devtools.build.lib.packages.Provider;
-import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
-import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization;
import com.google.devtools.build.lib.skylarkinterface.SkylarkPrinter;
import com.google.devtools.build.lib.syntax.ClassObject;
import com.google.devtools.build.lib.syntax.EvalException;
@@ -41,7 +39,6 @@ import javax.annotation.Nullable;
*
* <p>Transitive info providers can also be overridden.
*/
-@AutoCodec
@Immutable
public final class AliasConfiguredTarget implements ConfiguredTarget, ClassObject {
private final Label label;
@@ -54,24 +51,10 @@ public final class AliasConfiguredTarget implements ConfiguredTarget, ClassObjec
RuleContext ruleContext,
ConfiguredTarget actual,
ImmutableMap<Class<? extends TransitiveInfoProvider>, TransitiveInfoProvider> overrides) {
- this(
- ruleContext.getLabel(),
- Preconditions.checkNotNull(ruleContext.getConfiguration()),
- Preconditions.checkNotNull(actual),
- Preconditions.checkNotNull(overrides));
- }
-
- @AutoCodec.Instantiator
- @VisibleForSerialization
- AliasConfiguredTarget(
- Label label,
- BuildConfiguration configuration,
- ConfiguredTarget actual,
- ImmutableMap<Class<? extends TransitiveInfoProvider>, TransitiveInfoProvider> overrides) {
- this.label = label;
- this.configuration = configuration;
- this.actual = actual;
- this.overrides = overrides;
+ this.label = ruleContext.getLabel();
+ this.configuration = Preconditions.checkNotNull(ruleContext.getConfiguration());
+ this.actual = Preconditions.checkNotNull(actual);
+ this.overrides = Preconditions.checkNotNull(overrides);
}
@Override
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcLinkParams.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcLinkParams.java
index a842b86be9..731357c4cd 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcLinkParams.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcLinkParams.java
@@ -47,17 +47,15 @@ public final class CcLinkParams {
/**
* A list of link options contributed by a single configured target.
*
- * <p><b>WARNING:</b> Do not implement {@code #equals()} in the obvious way. This class must be
+ * <b>WARNING:</b> Do not implement {@code #equals()} in the obvious way. This class must be
* checked for equality by object identity because otherwise if two configured targets contribute
* the same link options, they will be de-duplicated, which is not the desirable behavior.
*/
- @AutoCodec
@Immutable
public static final class LinkOptions {
private final ImmutableList<String> linkOptions;
- @VisibleForSerialization
- LinkOptions(Iterable<String> linkOptions) {
+ private LinkOptions(Iterable<String> linkOptions) {
this.linkOptions = ImmutableList.copyOf(linkOptions);
}
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcSkylarkApiProvider.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcSkylarkApiProvider.java
index 95a5a9436a..4c327cb993 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcSkylarkApiProvider.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcSkylarkApiProvider.java
@@ -19,7 +19,6 @@ import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.analysis.skylark.SkylarkApiProvider;
import com.google.devtools.build.lib.collect.nestedset.NestedSet;
import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder;
-import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory;
@@ -37,7 +36,6 @@ import com.google.devtools.build.lib.vfs.PathFragment;
+ "Every C++-related target provides this struct, accessible as a <code>cc</code> field "
+ "on <a href=\"Target.html\">target</a>."
)
-@AutoCodec
public final class CcSkylarkApiProvider extends SkylarkApiProvider {
/** The name of the field in Skylark used to access this class. */
public static final String NAME = "cc";
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetValue.java
index 341da8a6ec..fc4ebd6727 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetValue.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetValue.java
@@ -16,11 +16,9 @@ package com.google.devtools.build.lib.skyframe;
import com.google.common.annotations.VisibleForTesting;
import com.google.common.base.Preconditions;
import com.google.common.collect.ImmutableList;
-import com.google.common.collect.ImmutableMap;
import com.google.devtools.build.lib.actions.ActionAnalysisMetadata;
import com.google.devtools.build.lib.actions.ActionLookupValue;
import com.google.devtools.build.lib.actions.Actions.GeneratingActions;
-import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.analysis.ConfiguredTarget;
import com.google.devtools.build.lib.analysis.config.BuildConfiguration;
import com.google.devtools.build.lib.cmdline.Label;
@@ -28,18 +26,18 @@ import com.google.devtools.build.lib.collect.nestedset.NestedSet;
import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable;
import com.google.devtools.build.lib.concurrent.ThreadSafety.ThreadSafe;
import com.google.devtools.build.lib.packages.Package;
-import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
-import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec.VisibleForSerialization;
import com.google.devtools.build.skyframe.SkyKey;
import java.util.List;
import javax.annotation.Nullable;
-/** A configured target in the context of a Skyframe graph. */
-@AutoCodec
+/**
+ * A configured target in the context of a Skyframe graph.
+ */
@Immutable
@ThreadSafe
@VisibleForTesting
public final class ConfiguredTargetValue extends ActionLookupValue {
+
// These variables are only non-final because they may be clear()ed to save memory.
// configuredTarget is null only after it is cleared.
@Nullable private ConfiguredTarget configuredTarget;
@@ -47,18 +45,6 @@ public final class ConfiguredTargetValue extends ActionLookupValue {
// May be null either after clearing or because transitive packages are not tracked.
@Nullable private NestedSet<Package> transitivePackagesForPackageRootResolution;
- @AutoCodec.Instantiator
- @VisibleForSerialization
- ConfiguredTargetValue(
- List<ActionAnalysisMetadata> actions,
- ImmutableMap<Artifact, Integer> generatingActionIndex,
- ConfiguredTarget configuredTarget,
- NestedSet<Package> transitivePackagesForPackageRootResolution) {
- super(actions, generatingActionIndex);
- this.configuredTarget = configuredTarget;
- this.transitivePackagesForPackageRootResolution = transitivePackagesForPackageRootResolution;
- }
-
ConfiguredTargetValue(
ConfiguredTarget configuredTarget,
GeneratingActions generatingActions,
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/serialization/BooleanCodec.java b/src/main/java/com/google/devtools/build/lib/skyframe/serialization/BooleanCodec.java
deleted file mode 100644
index c30b69d2ef..0000000000
--- a/src/main/java/com/google/devtools/build/lib/skyframe/serialization/BooleanCodec.java
+++ /dev/null
@@ -1,40 +0,0 @@
-// Copyright 2018 The Bazel Authors. All rights reserved.
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-package com.google.devtools.build.lib.skyframe.serialization;
-
-import com.google.protobuf.CodedInputStream;
-import com.google.protobuf.CodedOutputStream;
-import java.io.IOException;
-
-/** Codec for {@link Boolean}. */
-class BooleanCodec implements ObjectCodec<Boolean> {
-
- @Override
- public Class<Boolean> getEncodedClass() {
- return Boolean.class;
- }
-
- @Override
- public void serialize(SerializationContext context, Boolean value, CodedOutputStream codedOut)
- throws IOException {
- codedOut.writeBoolNoTag(value);
- }
-
- @Override
- public Boolean deserialize(DeserializationContext context, CodedInputStream codedIn)
- throws IOException {
- return codedIn.readBool();
- }
-}
diff --git a/src/main/java/com/google/devtools/build/lib/util/Pair.java b/src/main/java/com/google/devtools/build/lib/util/Pair.java
index a4ac5b8d77..943f8c97f2 100644
--- a/src/main/java/com/google/devtools/build/lib/util/Pair.java
+++ b/src/main/java/com/google/devtools/build/lib/util/Pair.java
@@ -13,12 +13,12 @@
// limitations under the License.
package com.google.devtools.build.lib.util;
-import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
import java.util.Objects;
import javax.annotation.Nullable;
-/** An immutable, semantic-free ordered pair of nullable values. Avoid using it in public APIs. */
-@AutoCodec
+/**
+ * An immutable, semantic-free ordered pair of nullable values. Avoid using it in public APIs.
+ */
public final class Pair<A, B> {
/**