|
Spec-Zone .ru
спецификации, руководства, описания, API
|
public class TreeScanner<R,P> extends Object implements TreeVisitor<R,P>
Реализация по умолчанию visitXYZ методов определит результат следующим образом:
scan на том дочернем элементе. Дочерний элемент может быть простым узлом или им непосредственно список узлов. scan каждый дочерний элемент поочередно, и затем объединение результата каждого сканирования после первого с совокупным результатом до сих пор, как определено reduce(R, R) метод. Каждый дочерний элемент может быть любой простым узлом списка узлов. Поведение по умолчанию reduce метод является так, что результатом visitXYZ метода, будет результат последнего отсканированного дочернего элемента. Вот пример, чтобы считать число узлов идентификатора в дереве:
class CountIdentifiers extends TreeScanner{ @Override public Integer visitIdentifier(IdentifierTree node, Void p) { return 1; } @Override public Integer reduce(Integer r1, Integer r2) { return (r1 == null ? 0 : r1) + (r2 == null ? 0 : r2); } }
| Конструктор и Описание |
|---|
TreeScanner() |
public R reduce(R r1, R r2)
public R visitCompilationUnit(CompilationUnitTree node, P p)
visitCompilationUnit в интерфейсе TreeVisitor<R,P>public R visitImport(ImportTree node, P p)
visitImport в интерфейсе TreeVisitor<R,P>public R visitClass(ClassTree node, P p)
visitClass в интерфейсе TreeVisitor<R,P>public R visitMethod(MethodTree node, P p)
visitMethod в интерфейсе TreeVisitor<R,P>public R visitVariable(VariableTree node, P p)
visitVariable в интерфейсе TreeVisitor<R,P>public R visitEmptyStatement(EmptyStatementTree node, P p)
visitEmptyStatement в интерфейсе TreeVisitor<R,P>public R visitBlock(BlockTree node, P p)
visitBlock в интерфейсе TreeVisitor<R,P>public R visitDoWhileLoop(DoWhileLoopTree node, P p)
visitDoWhileLoop в интерфейсе TreeVisitor<R,P>public R visitWhileLoop(WhileLoopTree node, P p)
visitWhileLoop в интерфейсе TreeVisitor<R,P>public R visitForLoop(ForLoopTree node, P p)
visitForLoop в интерфейсе TreeVisitor<R,P>public R visitEnhancedForLoop(EnhancedForLoopTree node, P p)
visitEnhancedForLoop в интерфейсе TreeVisitor<R,P>public R visitLabeledStatement(LabeledStatementTree node, P p)
visitLabeledStatement в интерфейсе TreeVisitor<R,P>public R visitSwitch(SwitchTree node, P p)
visitSwitch в интерфейсе TreeVisitor<R,P>public R visitCase(CaseTree node, P p)
visitCase в интерфейсе TreeVisitor<R,P>public R visitSynchronized(SynchronizedTree node, P p)
visitSynchronized в интерфейсе TreeVisitor<R,P>public R visitCatch(CatchTree node, P p)
visitCatch в интерфейсе TreeVisitor<R,P>public R visitConditionalExpression(ConditionalExpressionTree node, P p)
visitConditionalExpression в интерфейсе TreeVisitor<R,P>public R visitExpressionStatement(ExpressionStatementTree node, P p)
visitExpressionStatement в интерфейсе TreeVisitor<R,P>public R visitBreak(BreakTree node, P p)
visitBreak в интерфейсе TreeVisitor<R,P>public R visitContinue(ContinueTree node, P p)
visitContinue в интерфейсе TreeVisitor<R,P>public R visitReturn(ReturnTree node, P p)
visitReturn в интерфейсе TreeVisitor<R,P>public R visitThrow(ThrowTree node, P p)
visitThrow в интерфейсе TreeVisitor<R,P>public R visitAssert(AssertTree node, P p)
visitAssert в интерфейсе TreeVisitor<R,P>public R visitMethodInvocation(MethodInvocationTree node, P p)
visitMethodInvocation в интерфейсе TreeVisitor<R,P>public R visitNewClass(NewClassTree node, P p)
visitNewClass в интерфейсе TreeVisitor<R,P>public R visitNewArray(NewArrayTree node, P p)
visitNewArray в интерфейсе TreeVisitor<R,P>public R visitParenthesized(ParenthesizedTree node, P p)
visitParenthesized в интерфейсе TreeVisitor<R,P>public R visitAssignment(AssignmentTree node, P p)
visitAssignment в интерфейсе TreeVisitor<R,P>public R visitCompoundAssignment(CompoundAssignmentTree node, P p)
visitCompoundAssignment в интерфейсе TreeVisitor<R,P>public R visitUnary(UnaryTree node, P p)
visitUnary в интерфейсе TreeVisitor<R,P>public R visitBinary(BinaryTree node, P p)
visitBinary в интерфейсе TreeVisitor<R,P>public R visitTypeCast(TypeCastTree node, P p)
visitTypeCast в интерфейсе TreeVisitor<R,P>public R visitInstanceOf(InstanceOfTree node, P p)
visitInstanceOf в интерфейсе TreeVisitor<R,P>public R visitArrayAccess(ArrayAccessTree node, P p)
visitArrayAccess в интерфейсе TreeVisitor<R,P>public R visitMemberSelect(MemberSelectTree node, P p)
visitMemberSelect в интерфейсе TreeVisitor<R,P>public R visitIdentifier(IdentifierTree node, P p)
visitIdentifier в интерфейсе TreeVisitor<R,P>public R visitLiteral(LiteralTree node, P p)
visitLiteral в интерфейсе TreeVisitor<R,P>public R visitPrimitiveType(PrimitiveTypeTree node, P p)
visitPrimitiveType в интерфейсе TreeVisitor<R,P>public R visitArrayType(ArrayTypeTree node, P p)
visitArrayType в интерфейсе TreeVisitor<R,P>public R visitParameterizedType(ParameterizedTypeTree node, P p)
visitParameterizedType в интерфейсе TreeVisitor<R,P>public R visitUnionType(UnionTypeTree node, P p)
visitUnionType в интерфейсе TreeVisitor<R,P>public R visitTypeParameter(TypeParameterTree node, P p)
visitTypeParameter в интерфейсе TreeVisitor<R,P>public R visitWildcard(WildcardTree node, P p)
visitWildcard в интерфейсе TreeVisitor<R,P>public R visitModifiers(ModifiersTree node, P p)
visitModifiers в интерфейсе TreeVisitor<R,P>public R visitAnnotation(AnnotationTree node, P p)
visitAnnotation в интерфейсе TreeVisitor<R,P>public R visitOther(Tree node, P p)
visitOther в интерфейсе TreeVisitor<R,P>public R visitErroneous(ErroneousTree node, P p)
visitErroneous в интерфейсе TreeVisitor<R,P>
Авторское право © 2005, 2011, Oracle и/или его филиалы. Все права защищены.