Package aQute.bnd.differ
Class JavaElement
java.lang.Object
aQute.bnd.differ.JavaElement
An element that compares the access field in a binary compatible way. This
element is used for classes, methods, constructors, and fields. For that
reason we also included the only method that uses this class as a static
method.
Packages
- MAJOR - Remove a public type
- MINOR - Add a public class
- MINOR - Add an interface
- MINOR - Add a method to a class
- MINOR - Add a method to a provider interface
- MAJOR - Add a method to a consumer interface
- MINOR - Add a field
- MICRO - Add an annotation to a member
- MINOR - Change the value of a constant
- MICRO - -abstract
- MICRO - -final
- MICRO - -protected
- MAJOR - +abstract
- MAJOR - +final
- MAJOR - +protected
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final Element
(package private) final Analyzer
(package private) static final Element
(package private) static final Element
(package private) static final Element
(package private) static final Element
(package private) final Packages
private static final Element
(package private) static final Element
(package private) final Map<Descriptors.TypeRef,
Integer> (package private) static final Element
(package private) final Set<Clazz.JAVA>
(package private) static final Element
(package private) final Set<Descriptors.TypeRef>
(package private) static final Element
(package private) final MultiMap<Descriptors.PackageRef,
Element> private static final Element
private static final Element
(package private) final Map<Descriptors.PackageRef,
Instructions> (package private) static final Element
private static final Element
(package private) static final Element
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate static void
access
(Collection<Element> children, int access, boolean deprecated, boolean provider) (package private) Element
classElement
(Clazz clazz) Calculate the class element.(package private) static Element
private Element
private Element
getReturn
(Descriptors.TypeRef type) private String
toString
(Descriptors.TypeRef[] prototype)
-
Field Details
-
INHERITED
-
PROTECTED
-
PROTECTED_PROVIDER
-
STATIC
-
ABSTRACT
-
FINAL
-
VOID_R
-
BOOLEAN_R
-
BYTE_R
-
SHORT_R
-
CHAR_R
-
INT_R
-
LONG_R
-
FLOAT_R
-
DOUBLE_R
-
OBJECT_R
-
analyzer
-
providerMatcher
-
innerAccess
-
notAccessible
-
cache
-
packages
-
javas
-
exports
-
-
Constructor Details
-
JavaElement
Create an element for the API. We take the exported packages and traverse those for their classes. If there is no manifest or it does not describe a bundle we assume the whole contents is exported.- Throws:
Exception
-
-
Method Details
-
getAPI
- Throws:
Exception
-
getLocalAPI
- Throws:
Exception
-
classElement
Calculate the class element. This requires parsing the class file and finding all the methods that were added etc. The parsing will take super interfaces and super classes into account. For this reason it maintains a queue of classes/interfaces to parse.- Throws:
Exception
-
toString
-
getReturn
-
access
private static void access(Collection<Element> children, int access, boolean deprecated, boolean provider)
-