org.jetbrains.kotlin.psi.KtContextReceiverList.kt Maven / Gradle / Ivy
/*
* Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors.
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/
package org.jetbrains.kotlin.psi
import com.intellij.lang.ASTNode
import org.jetbrains.kotlin.KtNodeTypes
import org.jetbrains.kotlin.psi.stubs.KotlinPlaceHolderStub
import org.jetbrains.kotlin.psi.stubs.elements.KtStubElementTypes
class KtContextReceiverList : KtElementImplStub> {
constructor(node: ASTNode) : super(node)
constructor(stub: KotlinPlaceHolderStub) : super(stub, KtStubElementTypes.CONTEXT_RECEIVER_LIST)
override fun accept(visitor: KtVisitor, data: D): R {
return visitor.visitContextReceiverList(this, data)
}
fun contextReceivers(): List = findChildrenByType(KtNodeTypes.CONTEXT_RECEIVER)
fun typeReferences(): List = contextReceivers().mapNotNull { it.typeReference() }
}