Support PRIVATE_TO_THIS in cls stub builder
This commit is contained in:
+1
-1
@@ -132,7 +132,7 @@ enum class FlagsToModifiers {
|
||||
override fun getModifiers(flags: Int): JetModifierKeywordToken? {
|
||||
val visibility = Flags.VISIBILITY.get(flags)
|
||||
return when (visibility) {
|
||||
ProtoBuf.Visibility.PRIVATE -> JetTokens.PRIVATE_KEYWORD
|
||||
ProtoBuf.Visibility.PRIVATE, ProtoBuf.Visibility.PRIVATE_TO_THIS -> JetTokens.PRIVATE_KEYWORD
|
||||
ProtoBuf.Visibility.INTERNAL -> JetTokens.INTERNAL_KEYWORD
|
||||
ProtoBuf.Visibility.PROTECTED -> JetTokens.PROTECTED_KEYWORD
|
||||
ProtoBuf.Visibility.PUBLIC -> JetTokens.PUBLIC_KEYWORD
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
package p
|
||||
|
||||
class PrivateToThis<in I> {
|
||||
private val foo: I = null!!
|
||||
private var bar: I = null!!
|
||||
|
||||
private val val_with_accessors: I
|
||||
get() = null!!
|
||||
|
||||
private var var_with_accessors: I
|
||||
get() = null!!
|
||||
set(value: I) {}
|
||||
|
||||
private fun bas(): I = null!!
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
PsiJetFileStubImpl[package=p]
|
||||
PACKAGE_DIRECTIVE:
|
||||
REFERENCE_EXPRESSION:[referencedName=p]
|
||||
CLASS:[fqName=p.PrivateToThis, isEnumEntry=false, isLocal=false, isTopLevel=true, isTrait=false, name=PrivateToThis, superNames=[]]
|
||||
MODIFIER_LIST:[internal final]
|
||||
TYPE_PARAMETER_LIST:
|
||||
TYPE_PARAMETER:[fqName=null, isInVariance=true, isOutVariance=false, name=I]
|
||||
MODIFIER_LIST:[in]
|
||||
VALUE_PARAMETER_LIST:
|
||||
CLASS_BODY:
|
||||
PROPERTY:[fqName=p.PrivateToThis.bar, hasDelegate=false, hasDelegateExpression=false, hasInitializer=false, hasReceiverTypeRef=false, hasReturnTypeRef=true, isProbablyNothingType=false, isTopLevel=false, isVar=true, name=bar]
|
||||
MODIFIER_LIST:[private final]
|
||||
TYPE_REFERENCE:
|
||||
USER_TYPE:[isAbsoluteInRootPackage=false]
|
||||
REFERENCE_EXPRESSION:[referencedName=I]
|
||||
PROPERTY:[fqName=p.PrivateToThis.foo, hasDelegate=false, hasDelegateExpression=false, hasInitializer=false, hasReceiverTypeRef=false, hasReturnTypeRef=true, isProbablyNothingType=false, isTopLevel=false, isVar=false, name=foo]
|
||||
MODIFIER_LIST:[private final]
|
||||
TYPE_REFERENCE:
|
||||
USER_TYPE:[isAbsoluteInRootPackage=false]
|
||||
REFERENCE_EXPRESSION:[referencedName=I]
|
||||
PROPERTY:[fqName=p.PrivateToThis.val_with_accessors, hasDelegate=false, hasDelegateExpression=false, hasInitializer=false, hasReceiverTypeRef=false, hasReturnTypeRef=true, isProbablyNothingType=false, isTopLevel=false, isVar=false, name=val_with_accessors]
|
||||
MODIFIER_LIST:[private final]
|
||||
TYPE_REFERENCE:
|
||||
USER_TYPE:[isAbsoluteInRootPackage=false]
|
||||
REFERENCE_EXPRESSION:[referencedName=I]
|
||||
PROPERTY:[fqName=p.PrivateToThis.var_with_accessors, hasDelegate=false, hasDelegateExpression=false, hasInitializer=false, hasReceiverTypeRef=false, hasReturnTypeRef=true, isProbablyNothingType=false, isTopLevel=false, isVar=true, name=var_with_accessors]
|
||||
MODIFIER_LIST:[private final]
|
||||
TYPE_REFERENCE:
|
||||
USER_TYPE:[isAbsoluteInRootPackage=false]
|
||||
REFERENCE_EXPRESSION:[referencedName=I]
|
||||
FUN:[fqName=p.PrivateToThis.bas, hasBlockBody=true, hasBody=true, hasTypeParameterListBeforeFunctionName=false, isExtension=false, isProbablyNothingType=false, isTopLevel=false, name=bas]
|
||||
MODIFIER_LIST:[private final]
|
||||
VALUE_PARAMETER_LIST:
|
||||
TYPE_REFERENCE:
|
||||
USER_TYPE:[isAbsoluteInRootPackage=false]
|
||||
REFERENCE_EXPRESSION:[referencedName=I]
|
||||
+6
@@ -108,6 +108,12 @@ public class ClsStubBuilderTestGenerated extends AbstractClsStubBuilderTest {
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("PrivateToThis")
|
||||
public void testPrivateToThis() throws Exception {
|
||||
String fileName = JetTestUtils.navigationMetadata("idea/testData/decompiler/stubBuilder/PrivateToThis/");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("TopLevelMembersAnnotatedPackage")
|
||||
public void testTopLevelMembersAnnotatedPackage() throws Exception {
|
||||
String fileName = JetTestUtils.navigationMetadata("idea/testData/decompiler/stubBuilder/TopLevelMembersAnnotatedPackage/");
|
||||
|
||||
Reference in New Issue
Block a user