void (@Nullable PsiType type) { final GrVariableDeclaration variableDeclaration = getDeclaration(); if (variableDeclaration == null) return; final GrTypeElement typeElement = variableDeclaration.getTypeElementGroovyForVariable(this); if (type == null) { if (typeElement != null) { if (!variableDeclaration.isTuple() && variableDeclaration.getModifierList().getModifiers().length == 0) { variableDeclaration.getModifierList().setModifierProperty(GrModifier.DEF, true); } typeElement.delete(); } return; } type = TypesUtil.unboxPrimitiveTypeWrapper(type); GrTypeElement newTypeElement; try { newTypeElement = GroovyPsiElementFactory.getInstance(getProject()).createTypeElement(type); } catch (IncorrectOperationException e) { LOG.error(e); return; } if (typeElement == null) { newTypeElement = (GrTypeElement)getParent().addBefore(newTypeElement, this); } else { newTypeElement = (GrTypeElement)typeElement.replace(newTypeElement); } JavaCodeStyleManager.getInstance(getProject()).shortenClassReferences(newTypeElement); }