Class ControlFlowVisitor

  • All Implemented Interfaces:
    com.sun.source.tree.TreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>

    public class ControlFlowVisitor
    extends com.sun.source.util.SimpleTreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
    Analyzes a series of statements to determine whether they don't, sometimes, or never return.
    Author:
    [email protected] (Louis Wasserman)
    • Method Detail

      • defaultAction

        protected ControlFlowVisitor.Result defaultAction​(com.sun.source.tree.Tree node,
                                                          com.google.errorprone.refaster.ControlFlowVisitor.BreakContext cxt)
        Overrides:
        defaultAction in class com.sun.source.util.SimpleTreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
      • visitBlock

        public ControlFlowVisitor.Result visitBlock​(com.sun.source.tree.BlockTree node,
                                                    com.google.errorprone.refaster.ControlFlowVisitor.BreakContext cxt)
        Specified by:
        visitBlock in interface com.sun.source.tree.TreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
        Overrides:
        visitBlock in class com.sun.source.util.SimpleTreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
      • visitDoWhileLoop

        public ControlFlowVisitor.Result visitDoWhileLoop​(com.sun.source.tree.DoWhileLoopTree node,
                                                          com.google.errorprone.refaster.ControlFlowVisitor.BreakContext cxt)
        Specified by:
        visitDoWhileLoop in interface com.sun.source.tree.TreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
        Overrides:
        visitDoWhileLoop in class com.sun.source.util.SimpleTreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
      • visitWhileLoop

        public ControlFlowVisitor.Result visitWhileLoop​(com.sun.source.tree.WhileLoopTree node,
                                                        com.google.errorprone.refaster.ControlFlowVisitor.BreakContext cxt)
        Specified by:
        visitWhileLoop in interface com.sun.source.tree.TreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
        Overrides:
        visitWhileLoop in class com.sun.source.util.SimpleTreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
      • visitForLoop

        public ControlFlowVisitor.Result visitForLoop​(com.sun.source.tree.ForLoopTree node,
                                                      com.google.errorprone.refaster.ControlFlowVisitor.BreakContext cxt)
        Specified by:
        visitForLoop in interface com.sun.source.tree.TreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
        Overrides:
        visitForLoop in class com.sun.source.util.SimpleTreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
      • visitEnhancedForLoop

        public ControlFlowVisitor.Result visitEnhancedForLoop​(com.sun.source.tree.EnhancedForLoopTree node,
                                                              com.google.errorprone.refaster.ControlFlowVisitor.BreakContext cxt)
        Specified by:
        visitEnhancedForLoop in interface com.sun.source.tree.TreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
        Overrides:
        visitEnhancedForLoop in class com.sun.source.util.SimpleTreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
      • visitSwitch

        public ControlFlowVisitor.Result visitSwitch​(com.sun.source.tree.SwitchTree node,
                                                     com.google.errorprone.refaster.ControlFlowVisitor.BreakContext cxt)
        Specified by:
        visitSwitch in interface com.sun.source.tree.TreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
        Overrides:
        visitSwitch in class com.sun.source.util.SimpleTreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
      • visitCase

        public ControlFlowVisitor.Result visitCase​(com.sun.source.tree.CaseTree node,
                                                   com.google.errorprone.refaster.ControlFlowVisitor.BreakContext cxt)
        Specified by:
        visitCase in interface com.sun.source.tree.TreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
        Overrides:
        visitCase in class com.sun.source.util.SimpleTreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
      • visitSynchronized

        public ControlFlowVisitor.Result visitSynchronized​(com.sun.source.tree.SynchronizedTree node,
                                                           com.google.errorprone.refaster.ControlFlowVisitor.BreakContext cxt)
        Specified by:
        visitSynchronized in interface com.sun.source.tree.TreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
        Overrides:
        visitSynchronized in class com.sun.source.util.SimpleTreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
      • visitTry

        public ControlFlowVisitor.Result visitTry​(com.sun.source.tree.TryTree node,
                                                  com.google.errorprone.refaster.ControlFlowVisitor.BreakContext cxt)
        Specified by:
        visitTry in interface com.sun.source.tree.TreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
        Overrides:
        visitTry in class com.sun.source.util.SimpleTreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
      • visitCatch

        public ControlFlowVisitor.Result visitCatch​(com.sun.source.tree.CatchTree node,
                                                    com.google.errorprone.refaster.ControlFlowVisitor.BreakContext cxt)
        Specified by:
        visitCatch in interface com.sun.source.tree.TreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
        Overrides:
        visitCatch in class com.sun.source.util.SimpleTreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
      • visitIf

        public ControlFlowVisitor.Result visitIf​(com.sun.source.tree.IfTree node,
                                                 com.google.errorprone.refaster.ControlFlowVisitor.BreakContext cxt)
        Specified by:
        visitIf in interface com.sun.source.tree.TreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
        Overrides:
        visitIf in class com.sun.source.util.SimpleTreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
      • visitExpressionStatement

        public ControlFlowVisitor.Result visitExpressionStatement​(com.sun.source.tree.ExpressionStatementTree node,
                                                                  com.google.errorprone.refaster.ControlFlowVisitor.BreakContext cxt)
        Specified by:
        visitExpressionStatement in interface com.sun.source.tree.TreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
        Overrides:
        visitExpressionStatement in class com.sun.source.util.SimpleTreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
      • visitLabeledStatement

        public ControlFlowVisitor.Result visitLabeledStatement​(com.sun.source.tree.LabeledStatementTree node,
                                                               com.google.errorprone.refaster.ControlFlowVisitor.BreakContext cxt)
        Specified by:
        visitLabeledStatement in interface com.sun.source.tree.TreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
        Overrides:
        visitLabeledStatement in class com.sun.source.util.SimpleTreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
      • visitBreak

        public ControlFlowVisitor.Result visitBreak​(com.sun.source.tree.BreakTree node,
                                                    com.google.errorprone.refaster.ControlFlowVisitor.BreakContext cxt)
        Specified by:
        visitBreak in interface com.sun.source.tree.TreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
        Overrides:
        visitBreak in class com.sun.source.util.SimpleTreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
      • visitContinue

        public ControlFlowVisitor.Result visitContinue​(com.sun.source.tree.ContinueTree node,
                                                       com.google.errorprone.refaster.ControlFlowVisitor.BreakContext cxt)
        Specified by:
        visitContinue in interface com.sun.source.tree.TreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
        Overrides:
        visitContinue in class com.sun.source.util.SimpleTreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
      • visitReturn

        public ControlFlowVisitor.Result visitReturn​(com.sun.source.tree.ReturnTree node,
                                                     com.google.errorprone.refaster.ControlFlowVisitor.BreakContext cxt)
        Specified by:
        visitReturn in interface com.sun.source.tree.TreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
        Overrides:
        visitReturn in class com.sun.source.util.SimpleTreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
      • visitThrow

        public ControlFlowVisitor.Result visitThrow​(com.sun.source.tree.ThrowTree node,
                                                    com.google.errorprone.refaster.ControlFlowVisitor.BreakContext cxt)
        Specified by:
        visitThrow in interface com.sun.source.tree.TreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>
        Overrides:
        visitThrow in class com.sun.source.util.SimpleTreeVisitor<ControlFlowVisitor.Result,​com.google.errorprone.refaster.ControlFlowVisitor.BreakContext>