diff options
author | brandjon <brandjon@google.com> | 2017-07-25 03:03:26 +0200 |
---|---|---|
committer | Jakob Buchgraber <buchgr@google.com> | 2017-07-25 13:17:40 +0200 |
commit | e1925a7a2f739611293dabc9b29060b8813b80a3 (patch) | |
tree | 317bd58aef4ade7dc9a5788fab5505eaa548cb71 /src/main/java/com/google/devtools/build/lib/syntax/SkylarkSemanticsOptions.java | |
parent | 4323addf30981eaf9fde73fffb2ded9442e1eb7d (diff) |
Add --internal_do_not_export_builtins, for testing
This is a temporary flag that causes Extension objects to elide some built-in symbols, for the benefit of tests. Currently it only applies to the "native" builtin for Extensions created by SkylarkImportLookupFunction.
A future Skylark language change will have the effect of excluding all builtin symbols from all Extension objects anyway, so this flag will eventually be subsumed by that incompatible change.
RELNOTES: None
PiperOrigin-RevId: 163016504
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/syntax/SkylarkSemanticsOptions.java')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/syntax/SkylarkSemanticsOptions.java | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/SkylarkSemanticsOptions.java b/src/main/java/com/google/devtools/build/lib/syntax/SkylarkSemanticsOptions.java index 5cda206d9a..a17887feb5 100644 --- a/src/main/java/com/google/devtools/build/lib/syntax/SkylarkSemanticsOptions.java +++ b/src/main/java/com/google/devtools/build/lib/syntax/SkylarkSemanticsOptions.java @@ -37,14 +37,29 @@ import java.io.Serializable; */ @UsesOnlyCoreTypes public class SkylarkSemanticsOptions extends OptionsBase implements Serializable { - // Used in an integration test to confirm that flags are visible to the interpreter. + + /** Used in an integration test to confirm that flags are visible to the interpreter. */ @Option( name = "internal_skylark_flag_test_canary", defaultValue = "false", documentationCategory = OptionDocumentationCategory.UNDOCUMENTED, effectTags = {OptionEffectTag.UNKNOWN} ) - public boolean skylarkFlagTestCanary; + public boolean internalSkylarkFlagTestCanary; + + /** + * Used in testing to produce a truly minimalistic Extension object for certain evaluation + * contexts. This flag is Bazel-specific. + */ + // TODO(bazel-team): A pending incompatible change will make it so that load()ed and built-in + // symbols do not get re-exported, making this flag obsolete. + @Option( + name = "internal_do_not_export_builtins", + defaultValue = "false", + documentationCategory = OptionDocumentationCategory.UNDOCUMENTED, + effectTags = {OptionEffectTag.UNKNOWN} + ) + public boolean internalDoNotExportBuiltins; @Option( name = "incompatible_disallow_set_constructor", |