diff options
author | 2016-10-11 12:29:40 +0000 | |
---|---|---|
committer | 2016-10-11 13:26:58 +0000 | |
commit | c79570cf340e158d5025ccdb1358c4e1548d2558 (patch) | |
tree | 5e343991a3b4c2b84d0e30af56fc8f139c5e019d /src/main/java/com/google/devtools/build/lib/syntax | |
parent | 884ca5ccf3c3241402149a4262d8a71da8e2e70f (diff) |
Rollback of commit 9c25afe750a937b2152c21a93effc8b9ba82c27b.
*** Reason for rollback ***
Seems to break some parts of aspects.
*** Original change description ***
Make EvalUtils.getDataTypeNameFromClass() look for @SkylarkModules in parent classes
This is needed to let subclasses of @SkylarkModules have the same type() string as their superclass, without requiring a second annotation for the subclass (which would lead to redundant documentation being generated).
--
MOS_MIGRATED_REVID=135786137
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/syntax')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/syntax/EvalUtils.java | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/EvalUtils.java b/src/main/java/com/google/devtools/build/lib/syntax/EvalUtils.java index 9609544e19..5b1834d868 100644 --- a/src/main/java/com/google/devtools/build/lib/syntax/EvalUtils.java +++ b/src/main/java/com/google/devtools/build/lib/syntax/EvalUtils.java @@ -21,7 +21,6 @@ import com.google.common.collect.Ordering; import com.google.devtools.build.lib.collect.nestedset.NestedSet; import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.events.Location; -import com.google.devtools.build.lib.skylarkinterface.SkylarkInterfaceUtils; import com.google.devtools.build.lib.skylarkinterface.SkylarkModule; import com.google.devtools.build.lib.skylarkinterface.SkylarkValue; import com.google.devtools.build.lib.syntax.compiler.ByteCodeUtils; @@ -256,9 +255,9 @@ public final class EvalUtils { * when the given class identifies a Skylark name space. */ public static String getDataTypeNameFromClass(Class<?> c, boolean highlightNameSpaces) { - SkylarkModule module = SkylarkInterfaceUtils.getSkylarkModule(c); - if (module != null) { - return module.name() + if (c.isAnnotationPresent(SkylarkModule.class)) { + SkylarkModule module = c.getAnnotation(SkylarkModule.class); + return c.getAnnotation(SkylarkModule.class).name() + ((module.namespace() && highlightNameSpaces) ? " (a language module)" : ""); } else if (c.equals(Object.class)) { return "unknown"; |