myResult = new FieldEvaluator(new TypeEvaluator(typeName), FieldEvaluator.createClassFilter(psiClass), name);
}
else {
- PsiType type = qualifier.getType();
- if(type == null) {
- throwEvaluateException(DebuggerBundle.message("evaluation.error.qualifier.type.unknown", qualifier.getText()));
- }
-
qualifier.accept(this);
if (myResult == null) {
throwEvaluateException(DebuggerBundle.message("evaluation.error.cannot.evaluate.qualifier", qualifier.getText()));
}
- myResult = new FieldEvaluator(myResult, FieldEvaluator.createClassFilter(type), name);
+ myResult = new FieldEvaluator(myResult, FieldEvaluator.createClassFilter(qualifier.getType()), name);
}
}
else {
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2015 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
import com.intellij.psi.util.PsiUtil;
import com.sun.jdi.*;
import org.jetbrains.annotations.NonNls;
+import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
public class FieldEvaluator implements Evaluator {
myTargetClassFilter = filter;
}
- public static TargetClassFilter createClassFilter(PsiType psiType) {
- if(psiType instanceof PsiArrayType) {
+ @NotNull
+ public static TargetClassFilter createClassFilter(@Nullable PsiType psiType) {
+ if(psiType == null || psiType instanceof PsiArrayType) {
return TargetClassFilter.ALL;
}
PsiClass psiClass = PsiUtil.resolveClassInType(psiType);