当前位置: 首页>>代码示例>>Java>>正文


Java PsiDocComment.getTags方法代码示例

本文整理汇总了Java中com.intellij.psi.javadoc.PsiDocComment.getTags方法的典型用法代码示例。如果您正苦于以下问题:Java PsiDocComment.getTags方法的具体用法?Java PsiDocComment.getTags怎么用?Java PsiDocComment.getTags使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.intellij.psi.javadoc.PsiDocComment的用法示例。


在下文中一共展示了PsiDocComment.getTags方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: visitDocComment

import com.intellij.psi.javadoc.PsiDocComment; //导入方法依赖的package包/类
@Override
public void visitDocComment(PsiDocComment comment) {
  super.visitDocComment(comment);
  final PsiDocTag[] tags = comment.getTags();
  for (PsiDocTag tag : tags) {
    if (Comparing.strEqual(tag.getName(), SuppressionUtil.SUPPRESS_INSPECTIONS_TAG_NAME)) {
      final PsiElement[] dataElements = tag.getDataElements();
      if (dataElements != null && dataElements.length > 0) {
        final PsiModifierListOwner listOwner = PsiTreeUtil.getParentOfType(comment, PsiModifierListOwner.class);
        if (listOwner != null) {
          final RefElementImpl element = (RefElementImpl)myRefManager.getReference(listOwner);
          if (element != null) {
            String suppression = "";
            for (PsiElement dataElement : dataElements) {
              suppression += "," + dataElement.getText();
            }
            element.addSuppression(suppression);
          }
        }
      }
    }
  }
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:24,代码来源:RefJavaManagerImpl.java

示例2: testDeleteTag1

import com.intellij.psi.javadoc.PsiDocComment; //导入方法依赖的package包/类
public void testDeleteTag1() throws Exception {
  final PsiElementFactory factory = getFactory();
  final PsiMethod method = factory.createMethodFromText(
        "/**\n" +
        " * Javadoc\n" +
        " * @param p1\n" +
        " * @param p2\n" +
        " */" +
        "  void m() {}", null);
  final PsiDocComment docComment = method.getDocComment();
  assertNotNull(docComment);
  final PsiDocTag[] tags = docComment.getTags();
  WriteCommandAction.runWriteCommandAction(null, new Runnable() {
    @Override
    public void run() {
      tags[0].delete();
    }
  });

  assertEquals("/**\n" +
               " * Javadoc\n" +
               " * @param p2\n" +
               " */", docComment.getText());

}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:26,代码来源:JavadocParamTagsTest.java

示例3: testDeleteTag2

import com.intellij.psi.javadoc.PsiDocComment; //导入方法依赖的package包/类
public void testDeleteTag2() throws Exception {
  final PsiElementFactory factory = getFactory();
  final PsiMethod method = factory.createMethodFromText(
        "/**\n" +
        " * Javadoc\n" +
        " * @param p1\n" +
        " * @param p2\n" +
        " */" +
        "  void m() {}", null);
  final PsiDocComment docComment = method.getDocComment();
  assertNotNull(docComment);
  final PsiDocTag[] tags = docComment.getTags();
  ApplicationManager.getApplication().runWriteAction(new Runnable() {
    @Override
    public void run() {
      tags[1].delete();
    }
  });

  assertEquals("/**\n" +
               " * Javadoc\n" +
               " * @param p1\n" +
               " */", docComment.getText());

}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:26,代码来源:JavadocParamTagsTest.java

示例4: testDeleteTag3

import com.intellij.psi.javadoc.PsiDocComment; //导入方法依赖的package包/类
public void testDeleteTag3() throws Exception {
  final PsiElementFactory factory = getFactory();
  final PsiMethod method = factory.createMethodFromText(
        "/**\n" +
        " * Javadoc\n" +
        " * @param p1\n" +
        " * @param p2\n" +
        " * @param p3\n" +
        " */" +
        "  void m() {}", null);
  final PsiDocComment docComment = method.getDocComment();
  assertNotNull(docComment);
  final PsiDocTag[] tags = docComment.getTags();
  ApplicationManager.getApplication().runWriteAction(new Runnable() {
    @Override
    public void run() {
      tags[1].delete();
    }
  });

  assertEquals("/**\n" +
               " * Javadoc\n" +
               " * @param p1\n" +
               " * @param p3\n" +
               " */", docComment.getText());
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:27,代码来源:JavadocParamTagsTest.java

示例5: testAddTag1

import com.intellij.psi.javadoc.PsiDocComment; //导入方法依赖的package包/类
public void testAddTag1() throws Exception {
  final PsiElementFactory factory = getFactory();
  final PsiMethod method = factory.createMethodFromText(
        "/**\n" +
        " * Javadoc\n" +
        " * @param p1\n" +
        " */\n" +
        "void m();", null);
  final PsiDocComment docComment = method.getDocComment();
  assertNotNull(docComment);
  final PsiDocTag[] tags = docComment.getTags();
  final PsiDocTag tag2 = factory.createParamTag("p2", "");
  docComment.addAfter(tag2, tags[0]);
  assertEquals(
    "/**\n" +
    " * Javadoc\n" +
    " * @param p1\n" +
    " * @param p2\n" +
    " */", docComment.getText());
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:21,代码来源:JavadocParamTagsTest.java

示例6: testAddTag2

import com.intellij.psi.javadoc.PsiDocComment; //导入方法依赖的package包/类
public void testAddTag2() throws Exception {
  final PsiElementFactory factory = getFactory();
  final PsiMethod method = factory.createMethodFromText(
        "/**\n" +
        " * Javadoc\n" +
        " * @param p1\n" +
        " */\n" +
        "void m();", null);
  final PsiDocComment docComment = method.getDocComment();
  assertNotNull(docComment);
  final PsiDocTag[] tags = docComment.getTags();
  final PsiDocTag tag2 = factory.createParamTag("p2", "");
  docComment.addBefore(tag2, tags[0]);
  assertEquals(
    "/**\n" +
    " * Javadoc\n" +
    " * @param p2\n" +
    " * @param p1\n" +
    " */", docComment.getText());
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:21,代码来源:JavadocParamTagsTest.java

示例7: locateCaret

import com.intellij.psi.javadoc.PsiDocComment; //导入方法依赖的package包/类
private static void locateCaret(@NotNull PsiDocComment comment, @NotNull Editor editor, @NotNull PsiFile file) {
  Document document = editor.getDocument();
  int lineToNavigate = -1;
  for (PsiDocTag tag : comment.getTags()) {
    PsiElement nameElement = tag.getNameElement();
    if (nameElement == null || !CARET_ANCHOR_TAGS.contains(nameElement.getText())) {
      continue;
    }
    boolean good = false;
    PsiElement[] dataElements = tag.getDataElements();
    if (dataElements != null) {
      PsiDocTagValue valueElement = tag.getValueElement();
      for (PsiElement element : dataElements) {
        if (element == valueElement) {
          continue;
        }
        if (!StringUtil.isEmptyOrSpaces(element.getText())) {
          good = true;
          break;
        }
      }
    }
    if (!good) {
      int offset = tag.getTextRange().getEndOffset();
      CharSequence text = document.getCharsSequence();
      int i = CharArrayUtil.shiftBackward(text, offset - 1, " \t*");
      if (i > 0 && text.charAt(i) == '\n') {
        offset = i - 1;
      }
      lineToNavigate = document.getLineNumber(offset);
      break;
    }
  }

  if (lineToNavigate >= 0) {
    editor.getCaretModel().moveToOffset(document.getLineEndOffset(lineToNavigate));
    JavadocNavigationDelegate.navigateToLineEnd(editor, file);
  }
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:40,代码来源:JavaDocCommentFixer.java


注:本文中的com.intellij.psi.javadoc.PsiDocComment.getTags方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。