/* Method to start visiting */ private void doInit() { if (myChild1 == null || myChild2 == null) return; PsiElement psi1 = myChild1.getPsi(); PsiElement psi2 = myChild2.getPsi(); if (psi1 == null || psi2 == null) return; if (psi1.getLanguage() != MoonFileType.MOON_LANGUAGE || psi2.getLanguage() != MoonFileType.MOON_LANGUAGE) { return; } if (myChild2 != null && mySettings.KEEP_FIRST_COLUMN_COMMENT && SpacingUtil.COMMENT_BIT_SET.contains(myChild2.getElementType())) { myResult = Spacing.createKeepingFirstColumnSpacing(0, Integer.MAX_VALUE, true, 1); return; } if (myChild1 != null && myChild2 != null && myChild1.getElementType() == NEWLINE) { final ASTNode prev = SpacingUtil.getPrevElementType(myChild1); if (prev != null && prev.getElementType() == SHORTCOMMENT) { myResult = Spacing.createSpacing( 0, 0, 1, mySettings.KEEP_LINE_BREAKS, mySettings.KEEP_BLANK_LINES_IN_CODE); return; } } if (myParent instanceof MoonPsiElement) { ((MoonPsiElement) myParent).accept(this); } }
private void init(final ASTNode child) { if (child == null) return; ASTNode treePrev = child.getTreePrev(); while (treePrev != null && SpacingUtil.isWhiteSpace(treePrev)) { treePrev = treePrev.getTreePrev(); } if (treePrev == null) { init(child.getTreeParent()); } else { myChild2 = child; myChild1 = treePrev; final CompositeElement parent = (CompositeElement) treePrev.getTreeParent(); myParent = SourceTreeToPsiMap.treeElementToPsi(parent); } }