Module jdk.compiler

Class TreePathScanner<R,P>

java.lang.Object
com.sun.source.util.TreeScanner<R,P>
com.sun.source.util.TreePathScanner<R,P>
类型参数:
R - 此访问者方法的返回类型。对于不需要返回结果的访问者,请使用Void
P - 此访问者方法的附加参数的类型。对于不需要附加参数的访问者,请使用Void
所有实现的接口:
TreeVisitor<R,P>

public class TreePathScanner<R,P> extends TreeScanner<R,P>
访问所有子树节点的TreeVisitor,并提供支持以维护父节点的路径。要访问特定类型的节点,只需重写相应的visitorXYZ方法。在您的方法内部,调用super.visitXYZ来访问后代节点。
API 注意:
为了初始化“当前路径”,必须通过调用其中一个scan方法来启动扫描。
自版本:
1.6
  • Constructor Details

    • TreePathScanner

      public TreePathScanner()
      构造一个TreePathScanner
  • Method Details

    • scan

      public R scan(TreePath path, P p)
      从由TreePath标识的位置扫描树。
      参数:
      path - 标识要扫描的节点的路径
      p - 传递给访问方法的参数值
      返回:
      访问方法的结果值
    • scan

      public R scan(Tree tree, P p)
      扫描单个节点。当前路径在扫描期间被更新。
      覆盖:
      scan 在类 TreeScanner<R,P>
      API 注意:
      通常只应由扫描器的visit方法调用此方法,作为由scan(TreePath, P)启动的正在进行的扫描的一部分。唯一的例外是,也可以调用它来启动对CompilationUnitTree的完整扫描。
      参数:
      tree - 要扫描的节点
      p - 传递给访问方法的参数值
      返回:
      访问方法的结果值
    • getCurrentPath

      public TreePath getCurrentPath()
      返回当前节点的当前路径,由当前活动的一组scan调用构建而成。
      返回:
      当前路径