java.lang.Object
javax.lang.model.util.AbstractElementVisitor6 <R,P>
javax.lang.model.util.ElementScanner6<R,P>
- 类型参数:
R- 此访问者方法的返回类型。对不需要返回结果的访问者使用Void。P- 此访问者方法的附加参数的类型。Void用于不需要额外参数的访问者。
- 所有已实现的接口:
ElementVisitor<R,P>
- 已知子类:
ElementScanner7
@SupportedSourceVersion (RELEASE_6 ) public class ElementScanner6<R,P> extends AbstractElementVisitor6 <R,P>
具有适用于
RELEASE_6 源版本的默认行为的程序元素扫描访问者。此类中的 visitXyz 方法通过在它们的 封闭元素 、 parameters 等上调用 scan 来扫描它们的组件元素,如各个方法规范中所示。子类可以通过覆盖 visitXyz 方法来控制访问元素的顺序。请注意,扫描程序的客户端可能会通过在感兴趣的根对象上调用 v.scan(e, p) 而不是 v.visit(e, p) 来获得所需的行为。
当子类覆盖 visitXyz 方法时,新方法可以通过调用 super.visitXyz 以默认方式扫描包含的元素。以这种方式,具体访问者可以控制遍历与附加处理相关的组件元素的顺序;例如,在覆盖方法的开头始终调用 super.visitXyz 将产生前序遍历等。如果应该以其他顺序遍历组件元素,而不是调用 super.visitXyz ,覆盖访问方法应该调用 scan 中的元素想要的顺序。
- API 注意:
-
此类中的方法可能会根据其一般约定被重写。
WARNING: 此类实现的
ElementVisitor接口将来可能会添加一些方法,以适应新的、目前未知的、添加到 Java 编程语言的未来版本中的语言结构。因此,以后可能会在这个类中加入名称以"visit"开头的方法;为避免不兼容,扩展此类的类不应声明名称以"visit"开头的任何实例方法。当添加这样一个新的访问方法时,该类中的默认实现将是直接或间接调用
visitUnknown方法。还将引入一个新的元素扫描器访问者类,以对应新的语言级别;对于所讨论的访问方法,此访问者将具有不同的默认行为。引入新访问者时,可能会弃用此访问者类的部分内容,包括其构造函数。 - 自从:
- 1.6
- 参见:
-
字段摘要
字段 -
构造方法总结
构造方法修饰符构造方法描述protected已弃用。第 6 版已过时;更新为访问者更新的版本级别。protectedElementScanner6(R defaultValue) 已弃用。第 6 版已过时;更新为访问者更新的版本级别。 -
方法总结
修饰符和类型方法描述final R遍历给定的元素并在每个元素上调用scan(Element, P)。final R相当于v.scan(e, null)的便捷方法。通过调用e.accept(this, p)处理一个元素;这个方法可以被子类覆盖。访问可执行元素。visitPackage(PackageElement e, P p) 访问包元素。visitType(TypeElement e, P p) 访问类型元素。访问类型参数元素。visitVariable(VariableElement e, P p) 访问可变元素。在类 javax.lang.model.util.AbstractElementVisitor6 中声明的方法
visit, visit, visitModule, visitRecordComponent, visitUnknown
-
字段详细信息
-
DEFAULT_VALUE
指定的默认值。
-
-
构造方法详细信息
-
ElementScanner6
已弃用。第 6 版已过时;更新为访问者更新的版本级别。具体子类的构造函数;使用null作为默认值。 -
ElementScanner6
已弃用。第 6 版已过时;更新为访问者更新的版本级别。具体子类的构造方法;使用参数作为默认值。- 参数:
defaultValue- 默认值
-
-
方法详情
-
scan
- 参数:
iterable- 要扫描的元素p- 附加参数- 返回:
-
最后一个元素的扫描或
DEFAULT_VALUE如果没有元素
-
scan
通过调用e.accept(this, p)处理一个元素;这个方法可以被子类覆盖。- 参数:
e- 要扫描的元素p- 扫描仪指定的参数- 返回:
-
访问
e的结果。
-
scan
相当于v.scan(e, null)的便捷方法。- 参数:
e- 要扫描的元素- 返回:
-
扫描
e的结果。
-
visitPackage
访问包元素。- 实现要求:
- 此实现扫描封闭的元素。
- 参数:
e- 要访问的元素p- 访问者指定的参数- 返回:
- 扫描结果
-
visitType
访问类型元素。- 实现要求:
- 此实现扫描封闭的元素。请注意,此实现对类型参数进行了 not 扫描,因为类型参数不被视为 类型的封闭元素 。
- 参数:
e- 要访问的元素p- 访问者指定的参数- 返回:
- 扫描结果
-
visitVariable
访问可变元素。- 实现要求:
-
此实现扫描封闭的元素,除非元素是
RESOURCE_VARIABLE,在这种情况下调用visitUnknown。 - 参数:
e- 要访问的元素p- 访问者指定的参数- 返回:
- 扫描结果
-
visitExecutable
访问可执行元素。- 实现要求:
- 此实现扫描参数。请注意,此实现not 扫描了类型参数。
- 参数:
e- 要访问的元素p- 访问者指定的参数- 返回:
- 扫描结果
-
visitTypeParameter
访问类型参数元素。- 实现要求:
- 此实现扫描封闭的元素。
- 参数:
e- 要访问的元素p- 访问者指定的参数- 返回:
- 扫描结果
-