mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
Allow calling valueOf() on nullable UAST expressions
This commit is contained in:
@@ -38,14 +38,15 @@ fun UFile.analyzeAll(context: UastContext = getUastContext(), extensions: List<U
|
||||
MapBasedEvaluationContext(context, extensions).analyzeAll(this)
|
||||
|
||||
@JvmOverloads
|
||||
fun UExpression.uValueOf(extensions: List<UEvaluatorExtension> = emptyList()): UValue? {
|
||||
fun UExpression?.uValueOf(extensions: List<UEvaluatorExtension> = emptyList()): UValue? {
|
||||
if (this == null) return null
|
||||
val declaration = getContainingDeclaration() ?: return null
|
||||
val context = declaration.getEvaluationContextWithCaching(extensions)
|
||||
context.analyze(declaration)
|
||||
return context.valueOf(this)
|
||||
}
|
||||
|
||||
fun UExpression.uValueOf(vararg extensions: UEvaluatorExtension): UValue? = uValueOf(extensions.asList())
|
||||
fun UExpression?.uValueOf(vararg extensions: UEvaluatorExtension): UValue? = uValueOf(extensions.asList())
|
||||
|
||||
fun UDeclaration.getEvaluationContextWithCaching(extensions: List<UEvaluatorExtension> = emptyList()): UEvaluationContext {
|
||||
return containingFile?.let { file ->
|
||||
|
||||
Reference in New Issue
Block a user