mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-01-04 17:20:55 +07:00
API dump: don't include synthetic bridges in the dump
These methods exist to support - covariant return type overrides; - generic overrides; - overrides of `void` methods with methods returning `java/lang/Void` in Kotlin. Such methods are called only through supertype invocations, and supertypes are already listed in the dump. The main reason for avoiding these in dumps: Java allows extending a public class `B` from a package-local class `A`. `B` can override a method of `A` with a covariant return type. In this case, a synthetic bridge is generated in `B` with the return type from method in `A`. If the method return type in `A` is also a package-local class `C`, this would mean `C` is leaked by the API surface of `B`. Instead, we consider such bridges not a part of the API. For a concrete example, see: `com.intellij.tools.apiDump.testData.inheritFromPackageLocal.JPackageLocalClass.packagePrivateMethodWithPackagePrivateReturnType`. Another reason has the same root cause: Java allows such class inheritance. A public class `B` which extends package-local class `A` "opens" up _all_ public/protected methods of `A` to the outer world. In subsequent commits, this is going to be reflected in the dump by copying the API methods of package-local `A` into public `B`. We don't want to copy the bridges, which a part of `A` and can be only accessed through supertype of `A`, to avoid false positive leaking API errors. GitOrigin-RevId: 2aecf62ad18f4ed6458927ccbd86f8066bea4751
This commit is contained in:
committed by
intellij-monorepo-bot
parent
f5ca12a94b
commit
57896efa7e
@@ -96,7 +96,6 @@ f:com.intellij.openapi.util.text.NaturalComparator
|
|||||||
- java.util.Comparator
|
- java.util.Comparator
|
||||||
- sf:INSTANCE:java.util.Comparator
|
- sf:INSTANCE:java.util.Comparator
|
||||||
- <init>():V
|
- <init>():V
|
||||||
- b:compare(java.lang.Object,java.lang.Object):I
|
|
||||||
- compare(java.lang.String,java.lang.String):I
|
- compare(java.lang.String,java.lang.String):I
|
||||||
f:com.intellij.openapi.util.text.Strings
|
f:com.intellij.openapi.util.text.Strings
|
||||||
- sf:EMPTY_CHAR_SEQUENCE:java.lang.CharSequence
|
- sf:EMPTY_CHAR_SEQUENCE:java.lang.CharSequence
|
||||||
@@ -522,7 +521,6 @@ f:com.intellij.util.containers.SoftArrayHashMap
|
|||||||
- <init>():V
|
- <init>():V
|
||||||
- clear():V
|
- clear():V
|
||||||
- clone():com.intellij.util.containers.SoftArrayHashMap
|
- clone():com.intellij.util.containers.SoftArrayHashMap
|
||||||
- b:clone():java.lang.Object
|
|
||||||
- containsKey(java.lang.Object[]):Z
|
- containsKey(java.lang.Object[]):Z
|
||||||
- get(java.lang.Object[]):java.lang.Object
|
- get(java.lang.Object[]):java.lang.Object
|
||||||
- processLeafEntries(java.util.function.BiPredicate):Z
|
- processLeafEntries(java.util.function.BiPredicate):Z
|
||||||
@@ -680,7 +678,6 @@ f:com.intellij.util.text.SemVer
|
|||||||
- <init>(java.lang.String,I,I,I):V
|
- <init>(java.lang.String,I,I,I):V
|
||||||
- <init>(java.lang.String,I,I,I,java.lang.String):V
|
- <init>(java.lang.String,I,I,I,java.lang.String):V
|
||||||
- compareTo(com.intellij.util.text.SemVer):I
|
- compareTo(com.intellij.util.text.SemVer):I
|
||||||
- b:compareTo(java.lang.Object):I
|
|
||||||
- equals(java.lang.Object):Z
|
- equals(java.lang.Object):Z
|
||||||
- getMajor():I
|
- getMajor():I
|
||||||
- getMinor():I
|
- getMinor():I
|
||||||
|
|||||||
@@ -93,26 +93,18 @@ f:org.apache.commons.lang.builder.EqualsBuilder
|
|||||||
- org.apache.commons.lang3.builder.EqualsBuilder
|
- org.apache.commons.lang3.builder.EqualsBuilder
|
||||||
- <init>():V
|
- <init>():V
|
||||||
- append(I,I):org.apache.commons.lang.builder.EqualsBuilder
|
- append(I,I):org.apache.commons.lang.builder.EqualsBuilder
|
||||||
- b:append(I,I):org.apache.commons.lang3.builder.EqualsBuilder
|
|
||||||
- append(java.lang.Object,java.lang.Object):org.apache.commons.lang.builder.EqualsBuilder
|
- append(java.lang.Object,java.lang.Object):org.apache.commons.lang.builder.EqualsBuilder
|
||||||
- b:append(java.lang.Object,java.lang.Object):org.apache.commons.lang3.builder.EqualsBuilder
|
|
||||||
- append(Z,Z):org.apache.commons.lang.builder.EqualsBuilder
|
- append(Z,Z):org.apache.commons.lang.builder.EqualsBuilder
|
||||||
- b:append(Z,Z):org.apache.commons.lang3.builder.EqualsBuilder
|
|
||||||
- appendSuper(Z):org.apache.commons.lang.builder.EqualsBuilder
|
- appendSuper(Z):org.apache.commons.lang.builder.EqualsBuilder
|
||||||
- b:appendSuper(Z):org.apache.commons.lang3.builder.EqualsBuilder
|
|
||||||
- s:reflectionEquals(java.lang.Object,java.lang.Object):Z
|
- s:reflectionEquals(java.lang.Object,java.lang.Object):Z
|
||||||
f:org.apache.commons.lang.builder.HashCodeBuilder
|
f:org.apache.commons.lang.builder.HashCodeBuilder
|
||||||
- org.apache.commons.lang3.builder.HashCodeBuilder
|
- org.apache.commons.lang3.builder.HashCodeBuilder
|
||||||
- <init>():V
|
- <init>():V
|
||||||
- <init>(I,I):V
|
- <init>(I,I):V
|
||||||
- append(I):org.apache.commons.lang.builder.HashCodeBuilder
|
- append(I):org.apache.commons.lang.builder.HashCodeBuilder
|
||||||
- b:append(I):org.apache.commons.lang3.builder.HashCodeBuilder
|
|
||||||
- append(java.lang.Object):org.apache.commons.lang.builder.HashCodeBuilder
|
- append(java.lang.Object):org.apache.commons.lang.builder.HashCodeBuilder
|
||||||
- b:append(java.lang.Object):org.apache.commons.lang3.builder.HashCodeBuilder
|
|
||||||
- append(Z):org.apache.commons.lang.builder.HashCodeBuilder
|
- append(Z):org.apache.commons.lang.builder.HashCodeBuilder
|
||||||
- b:append(Z):org.apache.commons.lang3.builder.HashCodeBuilder
|
|
||||||
- appendSuper(I):org.apache.commons.lang.builder.HashCodeBuilder
|
- appendSuper(I):org.apache.commons.lang.builder.HashCodeBuilder
|
||||||
- b:appendSuper(I):org.apache.commons.lang3.builder.HashCodeBuilder
|
|
||||||
- s:reflectionHashCode(java.lang.Object):I
|
- s:reflectionHashCode(java.lang.Object):I
|
||||||
f:org.apache.commons.lang.builder.ReflectionToStringBuilder
|
f:org.apache.commons.lang.builder.ReflectionToStringBuilder
|
||||||
- org.apache.commons.lang3.builder.ReflectionToStringBuilder
|
- org.apache.commons.lang3.builder.ReflectionToStringBuilder
|
||||||
@@ -135,11 +127,8 @@ f:org.apache.commons.lang.text.StrBuilder
|
|||||||
- <init>(I):V
|
- <init>(I):V
|
||||||
- <init>(java.lang.String):V
|
- <init>(java.lang.String):V
|
||||||
- append(I):org.apache.commons.lang.text.StrBuilder
|
- append(I):org.apache.commons.lang.text.StrBuilder
|
||||||
- b:append(I):org.apache.commons.lang3.text.StrBuilder
|
|
||||||
- append(java.lang.String):org.apache.commons.lang.text.StrBuilder
|
- append(java.lang.String):org.apache.commons.lang.text.StrBuilder
|
||||||
- b:append(java.lang.String):org.apache.commons.lang3.text.StrBuilder
|
|
||||||
- appendNewLine():org.apache.commons.lang.text.StrBuilder
|
- appendNewLine():org.apache.commons.lang.text.StrBuilder
|
||||||
- b:appendNewLine():org.apache.commons.lang3.text.StrBuilder
|
|
||||||
f:org.apache.commons.lang.text.StrSubstitutor
|
f:org.apache.commons.lang.text.StrSubstitutor
|
||||||
- org.apache.commons.lang3.text.StrSubstitutor
|
- org.apache.commons.lang3.text.StrSubstitutor
|
||||||
- <init>():V
|
- <init>():V
|
||||||
|
|||||||
@@ -12,7 +12,6 @@ c:org.jdom.Attribute
|
|||||||
- <init>(java.lang.String,java.lang.String,org.jdom.AttributeType):V
|
- <init>(java.lang.String,java.lang.String,org.jdom.AttributeType):V
|
||||||
- <init>(java.lang.String,java.lang.String,org.jdom.AttributeType,org.jdom.Namespace):V
|
- <init>(java.lang.String,java.lang.String,org.jdom.AttributeType,org.jdom.Namespace):V
|
||||||
- <init>(java.lang.String,java.lang.String,org.jdom.Namespace):V
|
- <init>(java.lang.String,java.lang.String,org.jdom.Namespace):V
|
||||||
- b:clone():java.lang.Object
|
|
||||||
- clone():org.jdom.Attribute
|
- clone():org.jdom.Attribute
|
||||||
- detach():org.jdom.Attribute
|
- detach():org.jdom.Attribute
|
||||||
- getAttributeType():org.jdom.AttributeType
|
- getAttributeType():org.jdom.AttributeType
|
||||||
@@ -60,27 +59,16 @@ c:org.jdom.CDATA
|
|||||||
- <init>(Z,java.lang.String):V
|
- <init>(Z,java.lang.String):V
|
||||||
- append(java.lang.String):V
|
- append(java.lang.String):V
|
||||||
- append(org.jdom.Text):V
|
- append(org.jdom.Text):V
|
||||||
- b:clone():java.lang.Object
|
|
||||||
- clone():org.jdom.CDATA
|
- clone():org.jdom.CDATA
|
||||||
- b:clone():org.jdom.Content
|
|
||||||
- b:clone():org.jdom.Text
|
|
||||||
- detach():org.jdom.CDATA
|
- detach():org.jdom.CDATA
|
||||||
- b:detach():org.jdom.Content
|
|
||||||
- b:detach():org.jdom.Text
|
|
||||||
- p:setParent(org.jdom.Parent):org.jdom.CDATA
|
- p:setParent(org.jdom.Parent):org.jdom.CDATA
|
||||||
- bp:setParent(org.jdom.Parent):org.jdom.Content
|
|
||||||
- bp:setParent(org.jdom.Parent):org.jdom.Text
|
|
||||||
- setText(java.lang.String):org.jdom.CDATA
|
- setText(java.lang.String):org.jdom.CDATA
|
||||||
- b:setText(java.lang.String):org.jdom.Text
|
|
||||||
- toString():java.lang.String
|
- toString():java.lang.String
|
||||||
f:org.jdom.Comment
|
f:org.jdom.Comment
|
||||||
- org.jdom.Content
|
- org.jdom.Content
|
||||||
- <init>(java.lang.String):V
|
- <init>(java.lang.String):V
|
||||||
- b:clone():java.lang.Object
|
|
||||||
- clone():org.jdom.Comment
|
- clone():org.jdom.Comment
|
||||||
- b:clone():org.jdom.Content
|
|
||||||
- detach():org.jdom.Comment
|
- detach():org.jdom.Comment
|
||||||
- b:detach():org.jdom.Content
|
|
||||||
- getText():java.lang.String
|
- getText():java.lang.String
|
||||||
- getValue():java.lang.String
|
- getValue():java.lang.String
|
||||||
- setText(java.lang.String):org.jdom.Comment
|
- setText(java.lang.String):org.jdom.Comment
|
||||||
@@ -90,7 +78,6 @@ a:org.jdom.Content
|
|||||||
- pf:ctype:org.jdom.Content$CType
|
- pf:ctype:org.jdom.Content$CType
|
||||||
- p:parent:org.jdom.Parent
|
- p:parent:org.jdom.Parent
|
||||||
- p:<init>(org.jdom.Content$CType):V
|
- p:<init>(org.jdom.Content$CType):V
|
||||||
- b:clone():java.lang.Object
|
|
||||||
- clone():org.jdom.Content
|
- clone():org.jdom.Content
|
||||||
- detach():org.jdom.Content
|
- detach():org.jdom.Content
|
||||||
- f:getCType():org.jdom.Content$CType
|
- f:getCType():org.jdom.Content$CType
|
||||||
@@ -154,15 +141,11 @@ f:org.jdom.DocType
|
|||||||
- <init>(java.lang.String):V
|
- <init>(java.lang.String):V
|
||||||
- <init>(java.lang.String,java.lang.String):V
|
- <init>(java.lang.String,java.lang.String):V
|
||||||
- <init>(java.lang.String,java.lang.String,java.lang.String):V
|
- <init>(java.lang.String,java.lang.String,java.lang.String):V
|
||||||
- b:clone():java.lang.Object
|
|
||||||
- b:clone():org.jdom.Content
|
|
||||||
- clone():org.jdom.DocType
|
- clone():org.jdom.DocType
|
||||||
- b:detach():org.jdom.Content
|
|
||||||
- detach():org.jdom.DocType
|
- detach():org.jdom.DocType
|
||||||
- getElementName():java.lang.String
|
- getElementName():java.lang.String
|
||||||
- getInternalSubset():java.lang.String
|
- getInternalSubset():java.lang.String
|
||||||
- getParent():org.jdom.Document
|
- getParent():org.jdom.Document
|
||||||
- b:getParent():org.jdom.Parent
|
|
||||||
- getPublicID():java.lang.String
|
- getPublicID():java.lang.String
|
||||||
- getSystemID():java.lang.String
|
- getSystemID():java.lang.String
|
||||||
- getValue():java.lang.String
|
- getValue():java.lang.String
|
||||||
@@ -180,17 +163,11 @@ f:org.jdom.Document
|
|||||||
- <init>(org.jdom.Element,org.jdom.DocType):V
|
- <init>(org.jdom.Element,org.jdom.DocType):V
|
||||||
- <init>(org.jdom.Element,org.jdom.DocType,java.lang.String):V
|
- <init>(org.jdom.Element,org.jdom.DocType,java.lang.String):V
|
||||||
- addContent(I,java.util.Collection):org.jdom.Document
|
- addContent(I,java.util.Collection):org.jdom.Document
|
||||||
- b:addContent(I,java.util.Collection):org.jdom.Parent
|
|
||||||
- addContent(I,org.jdom.Content):org.jdom.Document
|
- addContent(I,org.jdom.Content):org.jdom.Document
|
||||||
- b:addContent(I,org.jdom.Content):org.jdom.Parent
|
|
||||||
- addContent(java.util.Collection):org.jdom.Document
|
- addContent(java.util.Collection):org.jdom.Document
|
||||||
- b:addContent(java.util.Collection):org.jdom.Parent
|
|
||||||
- addContent(org.jdom.Content):org.jdom.Document
|
- addContent(org.jdom.Content):org.jdom.Document
|
||||||
- b:addContent(org.jdom.Content):org.jdom.Parent
|
|
||||||
- canContainContent(org.jdom.Content,I,Z):V
|
- canContainContent(org.jdom.Content,I,Z):V
|
||||||
- b:clone():java.lang.Object
|
|
||||||
- clone():org.jdom.Document
|
- clone():org.jdom.Document
|
||||||
- b:clone():org.jdom.Parent
|
|
||||||
- cloneContent():java.util.List
|
- cloneContent():java.util.List
|
||||||
- detachRootElement():org.jdom.Element
|
- detachRootElement():org.jdom.Element
|
||||||
- equals(java.lang.Object):Z
|
- equals(java.lang.Object):Z
|
||||||
@@ -231,23 +208,15 @@ c:org.jdom.Element
|
|||||||
- <init>(java.lang.String,java.lang.String,java.lang.String):V
|
- <init>(java.lang.String,java.lang.String,java.lang.String):V
|
||||||
- <init>(java.lang.String,org.jdom.Namespace):V
|
- <init>(java.lang.String,org.jdom.Namespace):V
|
||||||
- addContent(I,java.util.Collection):org.jdom.Element
|
- addContent(I,java.util.Collection):org.jdom.Element
|
||||||
- b:addContent(I,java.util.Collection):org.jdom.Parent
|
|
||||||
- addContent(I,org.jdom.Content):org.jdom.Element
|
- addContent(I,org.jdom.Content):org.jdom.Element
|
||||||
- b:addContent(I,org.jdom.Content):org.jdom.Parent
|
|
||||||
- addContent(java.lang.String):org.jdom.Element
|
- addContent(java.lang.String):org.jdom.Element
|
||||||
- addContent(java.util.Collection):org.jdom.Element
|
- addContent(java.util.Collection):org.jdom.Element
|
||||||
- b:addContent(java.util.Collection):org.jdom.Parent
|
|
||||||
- addContent(org.jdom.Content):org.jdom.Element
|
- addContent(org.jdom.Content):org.jdom.Element
|
||||||
- b:addContent(org.jdom.Content):org.jdom.Parent
|
|
||||||
- addContent(org.jdom.Element):org.jdom.Element
|
- addContent(org.jdom.Element):org.jdom.Element
|
||||||
- addNamespaceDeclaration(org.jdom.Namespace):V
|
- addNamespaceDeclaration(org.jdom.Namespace):V
|
||||||
- canContainContent(org.jdom.Content,I,Z):V
|
- canContainContent(org.jdom.Content,I,Z):V
|
||||||
- b:clone():java.lang.Object
|
|
||||||
- b:clone():org.jdom.Content
|
|
||||||
- clone():org.jdom.Element
|
- clone():org.jdom.Element
|
||||||
- b:clone():org.jdom.Parent
|
|
||||||
- cloneContent():java.util.List
|
- cloneContent():java.util.List
|
||||||
- b:detach():org.jdom.Content
|
|
||||||
- detach():org.jdom.Element
|
- detach():org.jdom.Element
|
||||||
- getAdditionalNamespaces():java.util.List
|
- getAdditionalNamespaces():java.util.List
|
||||||
- getAttribute(java.lang.String):org.jdom.Attribute
|
- getAttribute(java.lang.String):org.jdom.Attribute
|
||||||
@@ -324,14 +293,10 @@ f:org.jdom.EntityRef
|
|||||||
- <init>(java.lang.String):V
|
- <init>(java.lang.String):V
|
||||||
- <init>(java.lang.String,java.lang.String):V
|
- <init>(java.lang.String,java.lang.String):V
|
||||||
- <init>(java.lang.String,java.lang.String,java.lang.String):V
|
- <init>(java.lang.String,java.lang.String,java.lang.String):V
|
||||||
- b:clone():java.lang.Object
|
|
||||||
- b:clone():org.jdom.Content
|
|
||||||
- clone():org.jdom.EntityRef
|
- clone():org.jdom.EntityRef
|
||||||
- b:detach():org.jdom.Content
|
|
||||||
- detach():org.jdom.EntityRef
|
- detach():org.jdom.EntityRef
|
||||||
- getName():java.lang.String
|
- getName():java.lang.String
|
||||||
- getParent():org.jdom.Element
|
- getParent():org.jdom.Element
|
||||||
- b:getParent():org.jdom.Parent
|
|
||||||
- getValue():java.lang.String
|
- getValue():java.lang.String
|
||||||
- setName(java.lang.String):org.jdom.EntityRef
|
- setName(java.lang.String):org.jdom.EntityRef
|
||||||
- setPublicID(java.lang.String):org.jdom.EntityRef
|
- setPublicID(java.lang.String):org.jdom.EntityRef
|
||||||
@@ -429,10 +394,7 @@ f:org.jdom.ProcessingInstruction
|
|||||||
- <init>(java.lang.String):V
|
- <init>(java.lang.String):V
|
||||||
- <init>(java.lang.String,java.lang.String):V
|
- <init>(java.lang.String,java.lang.String):V
|
||||||
- <init>(java.lang.String,java.util.Map):V
|
- <init>(java.lang.String,java.util.Map):V
|
||||||
- b:clone():java.lang.Object
|
|
||||||
- b:clone():org.jdom.Content
|
|
||||||
- clone():org.jdom.ProcessingInstruction
|
- clone():org.jdom.ProcessingInstruction
|
||||||
- b:detach():org.jdom.Content
|
|
||||||
- detach():org.jdom.ProcessingInstruction
|
- detach():org.jdom.ProcessingInstruction
|
||||||
- getData():java.lang.String
|
- getData():java.lang.String
|
||||||
- getTarget():java.lang.String
|
- getTarget():java.lang.String
|
||||||
@@ -447,19 +409,14 @@ c:org.jdom.Text
|
|||||||
- p:<init>(org.jdom.Content$CType):V
|
- p:<init>(org.jdom.Content$CType):V
|
||||||
- append(java.lang.String):V
|
- append(java.lang.String):V
|
||||||
- append(org.jdom.Text):V
|
- append(org.jdom.Text):V
|
||||||
- b:clone():java.lang.Object
|
|
||||||
- b:clone():org.jdom.Content
|
|
||||||
- clone():org.jdom.Text
|
- clone():org.jdom.Text
|
||||||
- b:detach():org.jdom.Content
|
|
||||||
- detach():org.jdom.Text
|
- detach():org.jdom.Text
|
||||||
- getParent():org.jdom.Element
|
- getParent():org.jdom.Element
|
||||||
- b:getParent():org.jdom.Parent
|
|
||||||
- getText():java.lang.String
|
- getText():java.lang.String
|
||||||
- getTextNormalize():java.lang.String
|
- getTextNormalize():java.lang.String
|
||||||
- getTextTrim():java.lang.String
|
- getTextTrim():java.lang.String
|
||||||
- getValue():java.lang.String
|
- getValue():java.lang.String
|
||||||
- s:normalizeString(java.lang.String):java.lang.String
|
- s:normalizeString(java.lang.String):java.lang.String
|
||||||
- bp:setParent(org.jdom.Parent):org.jdom.Content
|
|
||||||
- p:setParent(org.jdom.Parent):org.jdom.Text
|
- p:setParent(org.jdom.Parent):org.jdom.Text
|
||||||
- setText(java.lang.String):org.jdom.Text
|
- setText(java.lang.String):org.jdom.Text
|
||||||
- toString():java.lang.String
|
- toString():java.lang.String
|
||||||
@@ -507,7 +464,6 @@ f:org.jdom.filter2.ElementFilter
|
|||||||
- <init>(java.lang.String,org.jdom.Namespace):V
|
- <init>(java.lang.String,org.jdom.Namespace):V
|
||||||
- <init>(org.jdom.Namespace):V
|
- <init>(org.jdom.Namespace):V
|
||||||
- equals(java.lang.Object):Z
|
- equals(java.lang.Object):Z
|
||||||
- b:filter(java.lang.Object):java.lang.Object
|
|
||||||
- filter(java.lang.Object):org.jdom.Element
|
- filter(java.lang.Object):org.jdom.Element
|
||||||
- hashCode():I
|
- hashCode():I
|
||||||
- toString():java.lang.String
|
- toString():java.lang.String
|
||||||
@@ -663,7 +619,6 @@ org.jdom.output.EscapeStrategy
|
|||||||
- a:shouldEscape(C):Z
|
- a:shouldEscape(C):Z
|
||||||
f:org.jdom.output.Format
|
f:org.jdom.output.Format
|
||||||
- java.lang.Cloneable
|
- java.lang.Cloneable
|
||||||
- b:clone():java.lang.Object
|
|
||||||
- clone():org.jdom.output.Format
|
- clone():org.jdom.output.Format
|
||||||
- s:compact(java.lang.String):java.lang.String
|
- s:compact(java.lang.String):java.lang.String
|
||||||
- s:getCompactFormat():org.jdom.output.Format
|
- s:getCompactFormat():org.jdom.output.Format
|
||||||
@@ -793,7 +748,6 @@ f:org.jdom.xpath.jaxen.JaxenXPathFactory
|
|||||||
a:org.jdom.xpath.util.AbstractXPathCompiled
|
a:org.jdom.xpath.util.AbstractXPathCompiled
|
||||||
- org.jdom.xpath.XPathExpression
|
- org.jdom.xpath.XPathExpression
|
||||||
- <init>(java.lang.String,org.jdom.filter2.Filter,java.util.Map,org.jdom.Namespace[]):V
|
- <init>(java.lang.String,org.jdom.filter2.Filter,java.util.Map,org.jdom.Namespace[]):V
|
||||||
- b:clone():java.lang.Object
|
|
||||||
- clone():org.jdom.xpath.XPathExpression
|
- clone():org.jdom.xpath.XPathExpression
|
||||||
- diagnose(java.lang.Object,Z):org.jdom.xpath.XPathDiagnostic
|
- diagnose(java.lang.Object,Z):org.jdom.xpath.XPathDiagnostic
|
||||||
- evaluate(java.lang.Object):java.util.List
|
- evaluate(java.lang.Object):java.util.List
|
||||||
|
|||||||
@@ -2,10 +2,7 @@
|
|||||||
package com.intellij.tools.apiDump
|
package com.intellij.tools.apiDump
|
||||||
|
|
||||||
import kotlinx.metadata.jvm.JvmFieldSignature
|
import kotlinx.metadata.jvm.JvmFieldSignature
|
||||||
import kotlinx.validation.api.ClassBinarySignature
|
import kotlinx.validation.api.*
|
||||||
import kotlinx.validation.api.MEMBER_SORT_ORDER
|
|
||||||
import kotlinx.validation.api.MemberBinarySignature
|
|
||||||
import kotlinx.validation.api.loadApiFromJvmClasses
|
|
||||||
import org.objectweb.asm.Opcodes
|
import org.objectweb.asm.Opcodes
|
||||||
import org.objectweb.asm.Type
|
import org.objectweb.asm.Type
|
||||||
import org.objectweb.asm.tree.AnnotationNode
|
import org.objectweb.asm.tree.AnnotationNode
|
||||||
@@ -30,6 +27,7 @@ class ApiIndex {
|
|||||||
val signatures: List<ClassBinarySignature> = classFilePaths
|
val signatures: List<ClassBinarySignature> = classFilePaths
|
||||||
.map { it.inputStream() }
|
.map { it.inputStream() }
|
||||||
.loadApiFromJvmClasses()
|
.loadApiFromJvmClasses()
|
||||||
|
.map { it.removeSyntheticBridges() }
|
||||||
discoverClasses(signatures)
|
discoverClasses(signatures)
|
||||||
|
|
||||||
handleAnnotationsAndVisibility(signatures)
|
handleAnnotationsAndVisibility(signatures)
|
||||||
@@ -134,28 +132,8 @@ class ApiIndex {
|
|||||||
member.access.isStatic
|
member.access.isStatic
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
val privateSignatures = privateSupertypes.flatMap { superType ->
|
|
||||||
superType.memberSignatures
|
|
||||||
.filter {
|
|
||||||
val flags = it.access.access
|
|
||||||
!flags.isSet(Opcodes.ACC_STATIC)
|
|
||||||
&& !flags.isSet(Opcodes.ACC_BRIDGE)
|
|
||||||
&& !flags.isSet(Opcodes.ACC_SYNTHETIC)
|
|
||||||
}
|
|
||||||
.map {
|
|
||||||
it.jvmMember
|
|
||||||
}
|
|
||||||
}.toSet()
|
|
||||||
val withoutBridges = memberSignatures
|
|
||||||
.filter { signature ->
|
|
||||||
val flags = signature.access.access
|
|
||||||
flags.isSet(Opcodes.ACC_STATIC)
|
|
||||||
|| !flags.isSet(Opcodes.ACC_BRIDGE)
|
|
||||||
|| !flags.isSet(Opcodes.ACC_SYNTHETIC)
|
|
||||||
|| signature.jvmMember !in privateSignatures
|
|
||||||
}
|
|
||||||
return this.copy(
|
return this.copy(
|
||||||
memberSignatures = withoutBridges + inheritedStaticSignatures,
|
memberSignatures = memberSignatures + inheritedStaticSignatures,
|
||||||
supertypes = supertypes - privateSupertypes.map { it.name }.toSet()
|
supertypes = supertypes - privateSupertypes.map { it.name }.toSet()
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
@@ -236,6 +214,26 @@ private fun List<AnnotationNode>?.isExperimental(): Boolean {
|
|||||||
|
|
||||||
private typealias ClassResolver = (String) -> ClassBinarySignature?
|
private typealias ClassResolver = (String) -> ClassBinarySignature?
|
||||||
|
|
||||||
|
private fun ClassBinarySignature.removeSyntheticBridges(): ClassBinarySignature {
|
||||||
|
val withoutBridges = memberSignatures.filterNot {
|
||||||
|
it is MethodBinarySignature && it.isSyntheticBridge()
|
||||||
|
}
|
||||||
|
if (withoutBridges.size == memberSignatures.size) {
|
||||||
|
return this
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
return copy(memberSignatures = withoutBridges)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private fun MethodBinarySignature.isSyntheticBridge(): Boolean {
|
||||||
|
return access.access.let { flags ->
|
||||||
|
!flags.isSet(Opcodes.ACC_STATIC)
|
||||||
|
&& flags.isSet(Opcodes.ACC_BRIDGE)
|
||||||
|
&& flags.isSet(Opcodes.ACC_SYNTHETIC)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private fun ClassBinarySignature.supertypes(classResolver: ClassResolver): Sequence<ClassBinarySignature> = sequence {
|
private fun ClassBinarySignature.supertypes(classResolver: ClassResolver): Sequence<ClassBinarySignature> = sequence {
|
||||||
val stack = ArrayDeque<ClassBinarySignature>()
|
val stack = ArrayDeque<ClassBinarySignature>()
|
||||||
stack.addLast(this@supertypes)
|
stack.addLast(this@supertypes)
|
||||||
|
|||||||
@@ -89,7 +89,6 @@ c:com.intellij.tools.apiDump.testData.JPublicClassInternalInterface
|
|||||||
c:com.intellij.tools.apiDump.testData.JPublicClassInternalSuper
|
c:com.intellij.tools.apiDump.testData.JPublicClassInternalSuper
|
||||||
- <init>():V
|
- <init>():V
|
||||||
- clone():com.intellij.tools.apiDump.testData.JPublicClassInternalSuper
|
- clone():com.intellij.tools.apiDump.testData.JPublicClassInternalSuper
|
||||||
- b:clone():java.lang.Object
|
|
||||||
- psf:protectedStaticFinalMethod():V
|
- psf:protectedStaticFinalMethod():V
|
||||||
- ps:protectedStaticMethod():V
|
- ps:protectedStaticMethod():V
|
||||||
- sf:publicStaticFinalMethod():V
|
- sf:publicStaticFinalMethod():V
|
||||||
@@ -135,7 +134,6 @@ f:com.intellij.tools.apiDump.testData.defaultParameters.KtChildClass
|
|||||||
- <init>():V
|
- <init>():V
|
||||||
- function(I,I,I):V
|
- function(I,I,I):V
|
||||||
- genericFunction(I,D,I):java.lang.Double
|
- genericFunction(I,D,I):java.lang.Double
|
||||||
- b:genericFunction(I,java.lang.Object,I):java.lang.Object
|
|
||||||
com.intellij.tools.apiDump.testData.defaultParameters.KtInterface
|
com.intellij.tools.apiDump.testData.defaultParameters.KtInterface
|
||||||
- a:function(I,I,I):V
|
- a:function(I,I,I):V
|
||||||
- bs:function$default(com.intellij.tools.apiDump.testData.defaultParameters.KtInterface,I,I,I,I,java.lang.Object):V
|
- bs:function$default(com.intellij.tools.apiDump.testData.defaultParameters.KtInterface,I,I,I,I,java.lang.Object):V
|
||||||
@@ -159,19 +157,11 @@ c:com.intellij.tools.apiDump.testData.generics.JGenericChildClass
|
|||||||
- com.intellij.tools.apiDump.testData.generics.JGenericMiddleClass
|
- com.intellij.tools.apiDump.testData.generics.JGenericMiddleClass
|
||||||
- <init>():V
|
- <init>():V
|
||||||
- acceptingAT(java.lang.Double[]):V
|
- acceptingAT(java.lang.Double[]):V
|
||||||
- b:acceptingAT(java.lang.Number[]):V
|
|
||||||
- b:acceptingAT(java.lang.Object[]):V
|
|
||||||
- acceptingLT(java.util.List):V
|
- acceptingLT(java.util.List):V
|
||||||
- acceptingT(java.lang.Double):V
|
- acceptingT(java.lang.Double):V
|
||||||
- b:acceptingT(java.lang.Number):V
|
|
||||||
- b:acceptingT(java.lang.Object):V
|
|
||||||
- returningAT():java.lang.Double[]
|
- returningAT():java.lang.Double[]
|
||||||
- b:returningAT():java.lang.Number[]
|
|
||||||
- b:returningAT():java.lang.Object[]
|
|
||||||
- returningLT():java.lang.Iterable
|
- returningLT():java.lang.Iterable
|
||||||
- returningT():java.lang.Double
|
- returningT():java.lang.Double
|
||||||
- b:returningT():java.lang.Number
|
|
||||||
- b:returningT():java.lang.Object
|
|
||||||
com.intellij.tools.apiDump.testData.generics.JGenericInterface
|
com.intellij.tools.apiDump.testData.generics.JGenericInterface
|
||||||
- a:acceptingAT(java.lang.Object[]):V
|
- a:acceptingAT(java.lang.Object[]):V
|
||||||
- a:acceptingLT(java.util.List):V
|
- a:acceptingLT(java.util.List):V
|
||||||
@@ -183,22 +173,16 @@ a:com.intellij.tools.apiDump.testData.generics.JGenericMiddleClass
|
|||||||
- com.intellij.tools.apiDump.testData.generics.JGenericInterface
|
- com.intellij.tools.apiDump.testData.generics.JGenericInterface
|
||||||
- <init>():V
|
- <init>():V
|
||||||
- acceptingAT(java.lang.Number[]):V
|
- acceptingAT(java.lang.Number[]):V
|
||||||
- b:acceptingAT(java.lang.Object[]):V
|
|
||||||
- acceptingLT(java.util.List):V
|
- acceptingLT(java.util.List):V
|
||||||
- a:acceptingT(java.lang.Number):V
|
- a:acceptingT(java.lang.Number):V
|
||||||
- b:acceptingT(java.lang.Object):V
|
|
||||||
- returningAT():java.lang.Number[]
|
- returningAT():java.lang.Number[]
|
||||||
- b:returningAT():java.lang.Object[]
|
|
||||||
- returningLT():java.lang.Iterable
|
- returningLT():java.lang.Iterable
|
||||||
- returningT():java.lang.Number
|
- returningT():java.lang.Number
|
||||||
- b:returningT():java.lang.Object
|
|
||||||
f:com.intellij.tools.apiDump.testData.generics2.JChildClasses
|
f:com.intellij.tools.apiDump.testData.generics2.JChildClasses
|
||||||
c:com.intellij.tools.apiDump.testData.generics2.JChildClasses$JChildClassFromMiddleWithAbstractOverride
|
c:com.intellij.tools.apiDump.testData.generics2.JChildClasses$JChildClassFromMiddleWithAbstractOverride
|
||||||
- com.intellij.tools.apiDump.testData.generics2.JGenericMiddleClassWithAbstractOverride
|
- com.intellij.tools.apiDump.testData.generics2.JGenericMiddleClassWithAbstractOverride
|
||||||
- <init>():V
|
- <init>():V
|
||||||
- genericMethod(java.lang.Double):java.lang.Double
|
- genericMethod(java.lang.Double):java.lang.Double
|
||||||
- b:genericMethod(java.lang.Number):java.lang.Number
|
|
||||||
- b:genericMethod(java.lang.Object):java.lang.Object
|
|
||||||
c:com.intellij.tools.apiDump.testData.generics2.JChildClasses$JChildClassFromMiddleWithOverride
|
c:com.intellij.tools.apiDump.testData.generics2.JChildClasses$JChildClassFromMiddleWithOverride
|
||||||
- com.intellij.tools.apiDump.testData.generics2.JGenericMiddleClassWithOverride
|
- com.intellij.tools.apiDump.testData.generics2.JGenericMiddleClassWithOverride
|
||||||
- <init>():V
|
- <init>():V
|
||||||
@@ -206,13 +190,10 @@ c:com.intellij.tools.apiDump.testData.generics2.JChildClasses$JChildClassFromMid
|
|||||||
- com.intellij.tools.apiDump.testData.generics2.JGenericMiddleClass
|
- com.intellij.tools.apiDump.testData.generics2.JGenericMiddleClass
|
||||||
- <init>():V
|
- <init>():V
|
||||||
- genericMethod(java.lang.Double):java.lang.Double
|
- genericMethod(java.lang.Double):java.lang.Double
|
||||||
- b:genericMethod(java.lang.Object):java.lang.Object
|
|
||||||
c:com.intellij.tools.apiDump.testData.generics2.JChildClasses$JChildClassWithOverrideFromMiddleWithOverride
|
c:com.intellij.tools.apiDump.testData.generics2.JChildClasses$JChildClassWithOverrideFromMiddleWithOverride
|
||||||
- com.intellij.tools.apiDump.testData.generics2.JGenericMiddleClassWithOverride
|
- com.intellij.tools.apiDump.testData.generics2.JGenericMiddleClassWithOverride
|
||||||
- <init>():V
|
- <init>():V
|
||||||
- genericMethod(java.lang.Double):java.lang.Double
|
- genericMethod(java.lang.Double):java.lang.Double
|
||||||
- b:genericMethod(java.lang.Number):java.lang.Number
|
|
||||||
- b:genericMethod(java.lang.Object):java.lang.Object
|
|
||||||
com.intellij.tools.apiDump.testData.generics2.JGenericInterface
|
com.intellij.tools.apiDump.testData.generics2.JGenericInterface
|
||||||
- a:genericMethod(java.lang.Object):java.lang.Object
|
- a:genericMethod(java.lang.Object):java.lang.Object
|
||||||
a:com.intellij.tools.apiDump.testData.generics2.JGenericMiddleClass
|
a:com.intellij.tools.apiDump.testData.generics2.JGenericMiddleClass
|
||||||
@@ -222,24 +203,20 @@ a:com.intellij.tools.apiDump.testData.generics2.JGenericMiddleClassWithAbstractO
|
|||||||
- com.intellij.tools.apiDump.testData.generics2.JGenericInterface
|
- com.intellij.tools.apiDump.testData.generics2.JGenericInterface
|
||||||
- <init>():V
|
- <init>():V
|
||||||
- a:genericMethod(java.lang.Number):java.lang.Number
|
- a:genericMethod(java.lang.Number):java.lang.Number
|
||||||
- b:genericMethod(java.lang.Object):java.lang.Object
|
|
||||||
a:com.intellij.tools.apiDump.testData.generics2.JGenericMiddleClassWithOverride
|
a:com.intellij.tools.apiDump.testData.generics2.JGenericMiddleClassWithOverride
|
||||||
- com.intellij.tools.apiDump.testData.generics2.JGenericInterface
|
- com.intellij.tools.apiDump.testData.generics2.JGenericInterface
|
||||||
- <init>():V
|
- <init>():V
|
||||||
- genericMethod(java.lang.Number):java.lang.Number
|
- genericMethod(java.lang.Number):java.lang.Number
|
||||||
- b:genericMethod(java.lang.Object):java.lang.Object
|
|
||||||
c:com.intellij.tools.apiDump.testData.inheritFromPackageLocal.JPublicClassFromPackageLocalRunnable
|
c:com.intellij.tools.apiDump.testData.inheritFromPackageLocal.JPublicClassFromPackageLocalRunnable
|
||||||
- <init>():V
|
- <init>():V
|
||||||
f:com.intellij.tools.apiDump.testData.inheritFromPackageLocal.JPublicFinalInheritor
|
f:com.intellij.tools.apiDump.testData.inheritFromPackageLocal.JPublicFinalInheritor
|
||||||
- <init>():V
|
- <init>():V
|
||||||
- b:packagePrivateMethodWithPackagePrivateReturnType():com.intellij.tools.apiDump.testData.inheritFromPackageLocal.JPackageLocalClass
|
|
||||||
- packagePrivateMethodWithPackagePrivateReturnType():com.intellij.tools.apiDump.testData.inheritFromPackageLocal.JPublicFinalInheritor
|
- packagePrivateMethodWithPackagePrivateReturnType():com.intellij.tools.apiDump.testData.inheritFromPackageLocal.JPublicFinalInheritor
|
||||||
- ps:protectedStaticMethod():V
|
- ps:protectedStaticMethod():V
|
||||||
- s:publicStaticMethod():V
|
- s:publicStaticMethod():V
|
||||||
c:com.intellij.tools.apiDump.testData.inheritFromPackageLocal.JPublicInheritor
|
c:com.intellij.tools.apiDump.testData.inheritFromPackageLocal.JPublicInheritor
|
||||||
- <init>():V
|
- <init>():V
|
||||||
- p:<init>(B):V
|
- p:<init>(B):V
|
||||||
- b:packagePrivateMethodWithPackagePrivateReturnType():com.intellij.tools.apiDump.testData.inheritFromPackageLocal.JPackageLocalClass
|
|
||||||
- packagePrivateMethodWithPackagePrivateReturnType():com.intellij.tools.apiDump.testData.inheritFromPackageLocal.JPublicInheritor
|
- packagePrivateMethodWithPackagePrivateReturnType():com.intellij.tools.apiDump.testData.inheritFromPackageLocal.JPublicInheritor
|
||||||
- ps:protectedStaticMethod():V
|
- ps:protectedStaticMethod():V
|
||||||
- s:publicStaticMethod():V
|
- s:publicStaticMethod():V
|
||||||
|
|||||||
Reference in New Issue
Block a user