Build proper modifier list stubs for 'SuspendFunction$n<...>' types.

This commit is contained in:
Dmitry Petrov
2016-12-14 15:32:25 +03:00
committed by Stanislav Erokhin
parent cf4fb1eb25
commit 9dc458375a
4 changed files with 46 additions and 7 deletions
@@ -1,4 +1,6 @@
public class TypeModifiers {
val function: () -> Unit = null!!
val suspendFunction: suspend () -> Unit = null!!
val suspendExtFunction: suspend Any.() -> Unit = null!!
@@ -7,12 +7,23 @@ PsiJetFileStubImpl[package=]
MODIFIER_LIST[public]
VALUE_PARAMETER_LIST
CLASS_BODY
PROPERTY[fqName=TypeModifiers.function, hasDelegate=false, hasDelegateExpression=false, hasInitializer=false, hasReturnTypeRef=true, isExtension=false, isTopLevel=false, isVar=false, name=function]
MODIFIER_LIST[public final]
TYPE_REFERENCE
FUNCTION_TYPE
VALUE_PARAMETER_LIST
TYPE_REFERENCE
USER_TYPE
USER_TYPE
REFERENCE_EXPRESSION[referencedName=kotlin]
REFERENCE_EXPRESSION[referencedName=Unit]
PROPERTY[fqName=TypeModifiers.functionOnSuspendFunction, hasDelegate=false, hasDelegateExpression=false, hasInitializer=false, hasReturnTypeRef=true, isExtension=false, isTopLevel=false, isVar=false, name=functionOnSuspendFunction]
MODIFIER_LIST[public final]
TYPE_REFERENCE
FUNCTION_TYPE
FUNCTION_TYPE_RECEIVER
TYPE_REFERENCE
MODIFIER_LIST[suspend]
FUNCTION_TYPE
VALUE_PARAMETER_LIST
TYPE_REFERENCE
@@ -29,6 +40,7 @@ PsiJetFileStubImpl[package=]
PROPERTY[fqName=TypeModifiers.suspendExtFunction, hasDelegate=false, hasDelegateExpression=false, hasInitializer=false, hasReturnTypeRef=true, isExtension=false, isTopLevel=false, isVar=false, name=suspendExtFunction]
MODIFIER_LIST[public final]
TYPE_REFERENCE
MODIFIER_LIST[suspend]
FUNCTION_TYPE
FUNCTION_TYPE_RECEIVER
TYPE_REFERENCE
@@ -45,6 +57,7 @@ PsiJetFileStubImpl[package=]
PROPERTY[fqName=TypeModifiers.suspendFunction, hasDelegate=false, hasDelegateExpression=false, hasInitializer=false, hasReturnTypeRef=true, isExtension=false, isTopLevel=false, isVar=false, name=suspendFunction]
MODIFIER_LIST[public final]
TYPE_REFERENCE
MODIFIER_LIST[suspend]
FUNCTION_TYPE
VALUE_PARAMETER_LIST
TYPE_REFERENCE