aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorGravatar Janak Ramakrishnan <janakr@google.com>2016-03-22 20:07:43 +0000
committerGravatar Damien Martin-Guillerez <dmarting@google.com>2016-03-23 12:19:51 +0000
commit81c5bd88bed02f7541cf56dd27d96867a560c4b7 (patch)
tree6b3211f489f64dbcf2f9829fdf89b3daa2f9c741 /src
parent73f2a45d3a601b43e72c866e44f4ba3eaa782aeb (diff)
Add comments to analysis-phase objects so future developers won't accidentally keep references to them after the analysis phase.
-- MOS_MIGRATED_REVID=117855145
Diffstat (limited to 'src')
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/AnalysisEnvironment.java5
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/RuleContext.java5
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/XcodeSupport.java5
3 files changed, 15 insertions, 0 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/AnalysisEnvironment.java b/src/main/java/com/google/devtools/build/lib/analysis/AnalysisEnvironment.java
index bf0213959e..cf1b16b8d7 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/AnalysisEnvironment.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/AnalysisEnvironment.java
@@ -29,6 +29,11 @@ import com.google.devtools.build.skyframe.SkyFunction;
/**
* The set of services that are provided to {@link ConfiguredTarget} objects
* during initialization.
+ *
+ * <p>These objects should not outlast the analysis phase. Do not pass them to {@link Action}
+ * objects or other persistent objects. There are internal tests to ensure that AnalysisEnvironment
+ * objects are not persisted that check the name of this class, so update those tests you change the
+ * names of any implementation of this class.
*/
public interface AnalysisEnvironment extends ActionRegistry {
/**
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 273d56229f..706d986193 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
@@ -89,6 +89,11 @@ import javax.annotation.Nullable;
* A helper class for rule implementations building and initialization. Objects of this
* class are intended to be passed to the builder for the configured target, which then creates the
* configured target.
+ *
+ * <p>These objects should not outlast the analysis phase. Do not pass them to {@link Action}
+ * objects or other persistent objects. There are internal tests to ensure that RuleContext objects
+ * are not persisted that check the name of this class, so update those tests if you change this
+ * class's name.
*/
public final class RuleContext extends TargetContext
implements ActionConstructionContext, ActionRegistry, RuleErrorConsumer {
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/XcodeSupport.java b/src/main/java/com/google/devtools/build/lib/rules/objc/XcodeSupport.java
index f76808c957..4c1dcac8d8 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/XcodeSupport.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/XcodeSupport.java
@@ -41,6 +41,11 @@ import java.util.List;
* Support for Objc rule types that export an Xcode provider or generate xcode project files.
*
* <p>Methods on this class can be called in any order without impacting the result.
+ *
+ * <p>These objects should not outlast the analysis phase. Do not pass them to {@link Action}
+ * objects or other persistent objects. There are internal tests to ensure that XcodeSupport objects
+ * are not persisted that check the name of this class, so update those tests if you change this
+ * class's name.
*/
public final class XcodeSupport {