diff options
author | cparsons <cparsons@google.com> | 2018-05-22 14:00:22 -0700 |
---|---|---|
committer | Copybara-Service <copybara-piper@google.com> | 2018-05-22 14:01:24 -0700 |
commit | 28cc833b50d55051ac087a5362b8c14cb67893e8 (patch) | |
tree | 5dc6629d2b4d629723e90195a5c7d50ada252597 /src/main/java/com/google/devtools/build/lib/rules/java/JavaCommon.java | |
parent | 055d6c619ab572debddb3518616c75f64462c145 (diff) |
Migrate JavaInfo's provider to use the new provider pattern.
This dramatically improves documentation generation for JavaInfo and it makes it far more maintainable and extensible going forward.
RELNOTES: None.
PiperOrigin-RevId: 197619040
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/java/JavaCommon.java')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/rules/java/JavaCommon.java | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaCommon.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaCommon.java index 26ba4441ea..a7d80cc300 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaCommon.java +++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaCommon.java @@ -44,6 +44,7 @@ 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.packages.BuildType; +import com.google.devtools.build.lib.packages.BuiltinProvider; import com.google.devtools.build.lib.packages.Info; import com.google.devtools.build.lib.packages.NativeProvider; import com.google.devtools.build.lib.packages.Target; @@ -919,6 +920,10 @@ public class JavaCommon { return AnalysisUtils.getProviders(getDependencies(), provider); } + /** Gets all the deps that implement a particular provider. */ + public final <P extends Info> Iterable<P> getDependencies(BuiltinProvider<P> provider) { + return AnalysisUtils.getProviders(getDependencies(), provider); + } /** * Returns true if and only if this target has the neverlink attribute set to |