DfaValue (DfaValueFactory factory, @NotNull PsiReferenceExpression refExpr) { PsiElement target = refExpr.resolve(); if (target instanceof PsiVariable variable) { if (!PsiUtil.isAccessedForWriting(refExpr) && !PlainDescriptor.hasInitializationHacks(variable)) { DfaValue constValue = getConstantFromVariable(factory, variable); if (constValue != null && !maybeUninitializedConstant(constValue, refExpr, variable)) return constValue; } } VariableDescriptor var = getAccessedVariableOrGetter(target); if (var == null) { return null; } DfaValue qualifier = getQualifierOrThisValue(factory, refExpr); return var.createValue(factory, qualifier); }