Introduced utility method closeDeclarationWithCommentBinders
This commit is contained in:
@@ -20,6 +20,7 @@ import com.intellij.lang.PsiBuilder;
|
|||||||
import com.intellij.psi.tree.IElementType;
|
import com.intellij.psi.tree.IElementType;
|
||||||
import com.intellij.psi.tree.TokenSet;
|
import com.intellij.psi.tree.TokenSet;
|
||||||
import com.intellij.util.containers.Stack;
|
import com.intellij.util.containers.Stack;
|
||||||
|
import org.jetbrains.annotations.NotNull;
|
||||||
import org.jetbrains.jet.lexer.JetKeywordToken;
|
import org.jetbrains.jet.lexer.JetKeywordToken;
|
||||||
import org.jetbrains.jet.lexer.JetToken;
|
import org.jetbrains.jet.lexer.JetToken;
|
||||||
import org.jetbrains.jet.lexer.JetTokens;
|
import org.jetbrains.jet.lexer.JetTokens;
|
||||||
@@ -377,6 +378,11 @@ import static org.jetbrains.jet.lexer.JetTokens.*;
|
|||||||
return myBuilder.newlineBeforeCurrentToken() || eof();
|
return myBuilder.newlineBeforeCurrentToken() || eof();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected static void closeDeclarationWithCommentBinders(@NotNull PsiBuilder.Marker marker, @NotNull IElementType elementType) {
|
||||||
|
marker.done(elementType);
|
||||||
|
marker.setCustomEdgeTokenBinders(PrecedingWhitespacesAndCommentsBinder.INSTANCE$, TrailingWhitespacesAndCommentsBinder.INSTANCE$);
|
||||||
|
}
|
||||||
|
|
||||||
protected abstract JetParsing create(SemanticWhitespaceAwarePsiBuilder builder);
|
protected abstract JetParsing create(SemanticWhitespaceAwarePsiBuilder builder);
|
||||||
|
|
||||||
protected JetParsing createTruncatedBuilder(int eofPosition) {
|
protected JetParsing createTruncatedBuilder(int eofPosition) {
|
||||||
|
|||||||
@@ -385,8 +385,7 @@ public class JetParsing extends AbstractJetParsing {
|
|||||||
decl.drop();
|
decl.drop();
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
decl.done(declType);
|
closeDeclarationWithCommentBinders(decl, declType);
|
||||||
decl.setCustomEdgeTokenBinders(PrecedingWhitespacesAndCommentsBinder.INSTANCE$, TrailingWhitespacesAndCommentsBinder.INSTANCE$);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -686,9 +685,7 @@ public class JetParsing extends AbstractJetParsing {
|
|||||||
entryOrMember.drop();
|
entryOrMember.drop();
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
entryOrMember.done(type);
|
closeDeclarationWithCommentBinders(entryOrMember, type);
|
||||||
entryOrMember.setCustomEdgeTokenBinders(PrecedingWhitespacesAndCommentsBinder.INSTANCE$,
|
|
||||||
TrailingWhitespacesAndCommentsBinder.INSTANCE$);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -778,8 +775,7 @@ public class JetParsing extends AbstractJetParsing {
|
|||||||
decl.drop();
|
decl.drop();
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
decl.done(declType);
|
closeDeclarationWithCommentBinders(decl, declType);
|
||||||
decl.setCustomEdgeTokenBinders(PrecedingWhitespacesAndCommentsBinder.INSTANCE$, TrailingWhitespacesAndCommentsBinder.INSTANCE$);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -877,10 +873,7 @@ public class JetParsing extends AbstractJetParsing {
|
|||||||
|
|
||||||
PsiBuilder.Marker objectDeclaration = mark();
|
PsiBuilder.Marker objectDeclaration = mark();
|
||||||
parseObject(false, true);
|
parseObject(false, true);
|
||||||
objectDeclaration.done(OBJECT_DECLARATION);
|
closeDeclarationWithCommentBinders(objectDeclaration, OBJECT_DECLARATION);
|
||||||
objectDeclaration.setCustomEdgeTokenBinders(PrecedingWhitespacesAndCommentsBinder.INSTANCE$,
|
|
||||||
TrailingWhitespacesAndCommentsBinder.INSTANCE$);
|
|
||||||
|
|
||||||
return CLASS_OBJECT;
|
return CLASS_OBJECT;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user