GrTypeComboBox (@NotNull GrExpression expression, boolean selectDef) { PsiType type = expression.getType(); if (expression instanceof GrReferenceExpression) { PsiElement resolved = ((GrReferenceExpression)expression).resolve(); if (resolved instanceof PsiClass) { type = TypesUtil.createJavaLangClassType(type, expression); } } if (GroovyRefactoringUtil.isDiamondNewOperator(expression)) { LOG.assertTrue(expression instanceof GrNewExpression); PsiType expected = PsiImplUtil.inferExpectedTypeForDiamond(expression); return new GrTypeComboBox(type, expected, expected == null, expression, selectDef); } else { if (type == PsiTypes.nullType()) { type = PsiType.getJavaLangObject(expression.getManager(), expression.getResolveScope()); } return new GrTypeComboBox(type, null, true, expression, selectDef); } }