some validity assertions (EA-26543)

This commit is contained in:
peter
2011-04-11 19:23:45 +02:00
parent 7b16df8807
commit 4f96d03a3e
3 changed files with 6 additions and 0 deletions
@@ -40,6 +40,7 @@ class JavaWithCastSurrounder extends JavaExpressionSurrounder {
}
public TextRange surroundExpression(final Project project, final Editor editor, PsiExpression expr) throws IncorrectOperationException {
assert expr.isValid();
PsiType[] types = GuessManager.getInstance(project).guessTypeToCast(expr);
final Template template = generateTemplate(project, expr.getText(), types);
TextRange range = expr.getTextRange();
@@ -162,6 +162,7 @@ public class GuessManagerImpl extends GuessManager {
}
private static Map<PsiExpression, PsiType> getAllTypeCasts(PsiExpression forPlace) {
assert forPlace.isValid();
final int start = forPlace.getTextRange().getStartOffset();
final Map<PsiExpression, PsiType> allCasts = new THashMap<PsiExpression, PsiType>(ExpressionTypeMemoryState.EXPRESSION_HASHING_STRATEGY);
getTopmostBlock(forPlace).accept(new JavaRecursiveElementWalkingVisitor() {
@@ -198,6 +199,7 @@ public class GuessManagerImpl extends GuessManager {
}
private static PsiElement getTopmostBlock(PsiElement scope) {
assert scope.isValid();
PsiElement lastScope = scope;
while (true) {
final PsiCodeBlock lastCodeBlock = PsiTreeUtil.getParentOfType(lastScope, PsiCodeBlock.class, true);