Examples of PsiElement


Examples of com.intellij.psi.PsiElement

      endOffset = startOffset;
      startOffset = tmp;
    }

    // adjust start/end
    PsiElement element1 = file.findElementAt(startOffset);
    PsiElement element2 = file.findElementAt(endOffset - 1);
    if (element1 instanceof PsiWhiteSpace) {
      startOffset = element1.getTextRange().getEndOffset();
    }
    if (element2 instanceof PsiWhiteSpace) {
      endOffset = element2.getTextRange().getStartOffset();
    }
    final PsiElement elementAtStart = file.findElementAt(startOffset);
    final PsiElement elementAtEnd = file.findElementAt(endOffset - 1);
    if (elementAtStart != null && elementAtEnd != null) {

      if (elementAtStart == elementAtEnd && !(elementAtStart instanceof Expression)) {
        final PsiElement elementToSurround = elementAtStart.getParent();
        if (elementToSurround instanceof Expression) {
          return new PsiElement[]{elementToSurround};
        }
      } else {

        final PsiElement commonContext = PsiTreeUtil.findCommonParent(elementAtStart, elementAtEnd);
        if (commonContext != null && !(commonContext instanceof PsiFile))
          return new PsiElement[]{commonContext};
      }
    }
    return PsiElement.EMPTY_ARRAY;
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.