From 76ee8337919dfa180459fdc19150349e1deb39a6 Mon Sep 17 00:00:00 2001 From: Maxim Medvedev Date: Fri, 8 Apr 2011 12:08:11 +0400 Subject: [PATCH] some annotations in code --- .../parser/parsing/statements/TryCatchStatement.java | 12 ++++++------ .../lang/psi/api/statements/GrCatchClause.java | 5 +++-- .../lang/psi/api/statements/GrFinallyClause.java | 4 +++- .../psi/impl/statements/GrFinallyClauseImpl.java | 3 ++- 4 files changed, 14 insertions(+), 10 deletions(-) diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/parser/parsing/statements/TryCatchStatement.java b/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/parser/parsing/statements/TryCatchStatement.java index f2a429ef8704..22bfdc1db96b 100644 --- a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/parser/parsing/statements/TryCatchStatement.java +++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/parser/parsing/statements/TryCatchStatement.java @@ -56,21 +56,21 @@ public class TryCatchStatement implements GroovyElementTypes { parseHandlers(builder, parser); } - if (kFINALLY.equals(builder.getTokenType()) | - ParserUtils.lookAhead(builder,mNLS, kFINALLY)) { + if (kFINALLY.equals(builder.getTokenType()) || ParserUtils.lookAhead(builder, mNLS, kFINALLY)) { ParserUtils.getToken(builder, mNLS); PsiBuilder.Marker finallyMarker = builder.mark(); warn = builder.mark(); ParserUtils.getToken(builder, kFINALLY); ParserUtils.getToken(builder, mNLS); - if (!mLCURLY.equals(builder.getTokenType()) || !OpenOrClosableBlock.parseOpenBlock(builder, parser)) { + if (mLCURLY.equals(builder.getTokenType()) && OpenOrClosableBlock.parseOpenBlock(builder, parser)) { + warn.drop(); + finallyMarker.done(FINALLY_CLAUSE); + } + else { finallyMarker.drop(); warn.rollbackTo(); builder.error(GroovyBundle.message("expression.expected")); - } else { - warn.drop(); - finallyMarker.done(FINALLY_CLAUSE); } } marker.done(TRY_BLOCK_STATEMENT); diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/psi/api/statements/GrCatchClause.java b/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/psi/api/statements/GrCatchClause.java index 2dde802cfaaa..9d43dcdf446f 100644 --- a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/psi/api/statements/GrCatchClause.java +++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/psi/api/statements/GrCatchClause.java @@ -12,8 +12,9 @@ import org.jetbrains.plugins.groovy.lang.psi.api.statements.params.GrParameter; public interface GrCatchClause extends GrParametersOwner { @Nullable - public GrParameter getParameter(); + GrParameter getParameter(); - public GrOpenBlock getBody(); + @Nullable + GrOpenBlock getBody(); } \ No newline at end of file diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/psi/api/statements/GrFinallyClause.java b/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/psi/api/statements/GrFinallyClause.java index e14a844320a4..28e3440d80b3 100644 --- a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/psi/api/statements/GrFinallyClause.java +++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/psi/api/statements/GrFinallyClause.java @@ -1,6 +1,7 @@ package org.jetbrains.plugins.groovy.lang.psi.api.statements; +import org.jetbrains.annotations.NotNull; import org.jetbrains.plugins.groovy.lang.psi.GroovyPsiElement; import org.jetbrains.plugins.groovy.lang.psi.api.statements.params.GrParameter; import org.jetbrains.plugins.groovy.lang.psi.api.statements.blocks.GrOpenBlock; @@ -10,6 +11,7 @@ import org.jetbrains.plugins.groovy.lang.psi.api.statements.blocks.GrOpenBlock; */ public interface GrFinallyClause extends GroovyPsiElement { - public GrOpenBlock getBody(); + @NotNull + GrOpenBlock getBody(); } \ No newline at end of file diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/psi/impl/statements/GrFinallyClauseImpl.java b/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/psi/impl/statements/GrFinallyClauseImpl.java index 413b7a4a1a06..3c7ee88fb9ed 100644 --- a/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/psi/impl/statements/GrFinallyClauseImpl.java +++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/lang/psi/impl/statements/GrFinallyClauseImpl.java @@ -38,8 +38,9 @@ public class GrFinallyClauseImpl extends GroovyPsiElementImpl implements GrFinal return "Finally clause"; } + @NotNull public GrOpenBlock getBody() { - return findChildByClass(GrOpenBlock.class); + return findNotNullChildByClass(GrOpenBlock.class); } } \ No newline at end of file