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


Java DocTreeScanner类代码示例

本文整理汇总了Java中com.sun.source.util.DocTreeScanner的典型用法代码示例。如果您正苦于以下问题:Java DocTreeScanner类的具体用法?Java DocTreeScanner怎么用?Java DocTreeScanner使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


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

示例1: scan

import com.sun.source.util.DocTreeScanner; //导入依赖的package包/类
@Override
public Void scan(final DocTree tree, Void ignore) {
    if (tree != null) {
        DocTree previous = null;
        for (DocTree current : getCurrentPath()) {
            if (previous != null) {
                final List<DocTree> children = new ArrayList<>();
                current.accept(new DocTreeScanner<Void, Void>() {
                    @Override public Void scan(DocTree node, Void p) {
                        children.add(node);
                        return null;
                    }
                }, null);

                if (!children.contains(previous)) {
                    error("Invalid DocTreePath for: " + tree);
                }
            }

            previous = current;
        }
    }
    return super.scan(tree, ignore);
}
 
开发者ID:AdoptOpenJDK,项目名称:openjdk-jdk10,代码行数:25,代码来源:DocTreePathScannerTest.java

示例2: listChildren

import com.sun.source.util.DocTreeScanner; //导入依赖的package包/类
private static List<DocTree> listChildren(@NonNull DocTree t) {
    final List<DocTree> result = new LinkedList<DocTree>();

    t.accept(new DocTreeScanner<Void, Void>() {
        @Override
        public Void scan(DocTree node, Void p) {
            result.add(node);
            return null;
        }
    }, null);

    return result;
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:14,代码来源:DocTreePathHandle.java

示例3: getLastChild

import com.sun.source.util.DocTreeScanner; //导入依赖的package包/类
private DocTree getLastChild(DocTree tree) {
    final DocTree[] last = new DocTree[] {null};

    tree.accept(new DocTreeScanner<Void, Void>() {
        @Override public Void scan(DocTree node, Void p) {
            if (node != null) last[0] = node;
            return null;
        }
    }, null);

    return last[0];
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:13,代码来源:JavacTrees.java

示例4: getLastChild

import com.sun.source.util.DocTreeScanner; //导入依赖的package包/类
private DocTree getLastChild(DocTree tree) {
    final DocTree[] last = new DocTree[] {null};

    tree.accept(new DocTreeScanner<Void, Void>() {
        @Override @DefinedBy(Api.COMPILER_TREE)
        public Void scan(DocTree node, Void p) {
            if (node != null) last[0] = node;
            return null;
        }
    }, null);

    return last[0];
}
 
开发者ID:AdoptOpenJDK,项目名称:openjdk-jdk10,代码行数:14,代码来源:JavacTrees.java

示例5: check

import com.sun.source.util.DocTreeScanner; //导入依赖的package包/类
private void check() {
    DocCommentTree dc = trees.getDocCommentTree(getCurrentPath());
    if (dc == null)
        return;

    DocTreeScanner<Void, Void> s = new DocTreeScanner<Void, Void>() {
        @Override
        public Void visitErroneous(ErroneousTree tree, Void ignore) {
            messager.printMessage(Diagnostic.Kind.NOTE, tree.getDiagnostic().getMessage(null));
            return null;
        }
    };

    s.scan(dc, null);
}
 
开发者ID:AdoptOpenJDK,项目名称:openjdk-jdk10,代码行数:16,代码来源:DocCommentProcessor.java

示例6: check

import com.sun.source.util.DocTreeScanner; //导入依赖的package包/类
@Override
void check(TreePath path, Name name) throws Exception {
    JavaFileObject fo = path.getCompilationUnit().getSourceFile();
    final CharSequence cs = fo.getCharContent(true);

    final DCDocComment dc = (DCDocComment) trees.getDocCommentTree(path);
    DCTree t = (DCTree) trees.getDocCommentTree(path);

    DocTreeScanner scanner = new DocTreeScanner<Void,Void>() {
        @Override
        public Void scan(DocTree node, Void ignore) {
            if (node != null) {
                try {
                    String expect = getExpectText(node);
                    long pos = ((DCTree) node).getSourcePosition(dc);
                    String found = getFoundText(cs, (int) pos, expect.length());
                    if (!found.equals(expect)) {
                        System.err.println("expect: " + expect);
                        System.err.println("found:  " + found);
                        error("mismatch");
                    }

                } catch (StringIndexOutOfBoundsException e) {
                    error(node.getClass() + ": " + e.toString());
                        e.printStackTrace();
                }
            }
            return super.scan(node, ignore);
        }
    };

    scanner.scan(t, null);
}
 
开发者ID:AdoptOpenJDK,项目名称:openjdk-jdk10,代码行数:34,代码来源:DocCommentTester.java

示例7: render

import com.sun.source.util.DocTreeScanner; //导入依赖的package包/类
private String render(List<? extends DocTree> trees) {
  StringBuilder buffer = new StringBuilder();
  DocTreeVisitor<Void, Void> visitor = new DocTreeScanner<Void, Void>() {
    @Override
    public Void visitText(TextTree node, Void aVoid) {
      buffer.append(node.getBody());
      return super.visitText(node, aVoid);
    }
  };
  trees.forEach(tree -> tree.accept(visitor, null));
  return buffer.toString();
}
 
开发者ID:vert-x3,项目名称:vertx-docgen,代码行数:13,代码来源:BaseProcessor.java


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