in src/main/kotlin/com/pestphp/pest/completion/ThisFieldsCompletionProvider.kt [25:45]
override fun addCompletions(
parameters: CompletionParameters,
context: ProcessingContext,
result: CompletionResultSet
) {
val fieldReference = parameters.position.parent as? FieldReference ?: return
val variable = fieldReference.classReference as? Variable ?: return
if (!variable.isThisVariableInPest { it.isAnyPestFunction() }) return
return (fieldReference.containingFile).getAllBeforeThisAssignments()
.filter { it.variable?.name !== null }
.forEach {
result.addElement(
LookupElementBuilder.create(it.variable!!.name!!)
.withIcon(PhpIcons.FIELD)
.withTypeText(it.type.toStringRelativized("\\"))
)
}
}