aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build
diff options
context:
space:
mode:
authorGravatar laurentlb <laurentlb@google.com>2017-09-15 12:15:21 +0200
committerGravatar László Csomor <laszlocsomor@google.com>2017-09-18 11:24:49 +0200
commitfce11aed18679c0f33bf18d9768a68425d86bfd3 (patch)
tree472b6fb91f3f219ab452ec0cd3599316d667dea5 /src/main/java/com/google/devtools/build
parentbf96c50e0c9afd3da8d937948c3636f09a0e80d7 (diff)
`repository_name()` and `package_name()` are available only in loading phase
RELNOTES: None. PiperOrigin-RevId: 168815084
Diffstat (limited to 'src/main/java/com/google/devtools/build')
-rw-r--r--src/main/java/com/google/devtools/build/lib/packages/SkylarkNativeModule.java10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/packages/SkylarkNativeModule.java b/src/main/java/com/google/devtools/build/lib/packages/SkylarkNativeModule.java
index dbf96043bd..2fe65d287f 100644
--- a/src/main/java/com/google/devtools/build/lib/packages/SkylarkNativeModule.java
+++ b/src/main/java/com/google/devtools/build/lib/packages/SkylarkNativeModule.java
@@ -209,11 +209,14 @@ public class SkylarkNativeModule {
+ "<code>package_name()</code> will match the caller BUILD file package. "
+ "This function is equivalent to the deprecated variable <code>PACKAGE_NAME</code>.",
parameters = {},
+ useAst = true,
useEnvironment = true
)
private static final BuiltinFunction packageName =
new BuiltinFunction("package_name") {
- public String invoke(Environment env) throws EvalException, ConversionException {
+ public String invoke(FuncallExpression ast, Environment env)
+ throws EvalException, ConversionException {
+ env.checkLoadingPhase("native.package_name", ast.getLocation());
return (String) env.lookup("PACKAGE_NAME");
}
};
@@ -229,11 +232,14 @@ public class SkylarkNativeModule {
+ "<code>@local</code>. In packages in the main repository, it will be empty. This "
+ "function is equivalent to the deprecated variable <code>REPOSITORY_NAME</code>.",
parameters = {},
+ useAst = true,
useEnvironment = true
)
private static final BuiltinFunction repositoryName =
new BuiltinFunction("repository_name") {
- public String invoke(Environment env) throws EvalException, ConversionException {
+ public String invoke(FuncallExpression ast, Environment env)
+ throws EvalException, ConversionException {
+ env.checkLoadingPhase("native.package_name", ast.getLocation());
return (String) env.lookup("REPOSITORY_NAME");
}
};