override fun getDeclarations()

in docker/src/ru/adelf/idea/dotenv/docker/DockerComposeYamlEnvKeySymbolDeclarationProvider.kt [17:28]


    override fun getDeclarations(element: PsiElement, offsetInElement: Int): Collection<PsiSymbolDeclaration> {
        return (element as? YAMLKeyValue)?.let { keyValue ->
            if ("environment" == keyValue.getKeyText()) {
                when (keyValue.lastChild) {
                    is YAMLSequence -> extractKeysFromScalarSequence(keyValue.lastChild as YAMLSequence)
                    is YAMLMapping -> extractKeysFromMapping(keyValue.lastChild as YAMLMapping)
                    else -> null
                }
            }
            else null
        } ?: emptyList()
    }