/* * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license. */ package org.jetbrains.dokka.base.utils // TODO [beresnev] remove this copy-paste and use the same method from stdlib instead after updating to 1.5 internal inline fun Iterable.firstNotNullOfOrNull(transform: (T) -> R?): R? { for (element in this) { val result = transform(element) if (result != null) { return result } } return null }