Class ExceptionHandler

java.lang.Object
jadx.core.dex.trycatch.ExceptionHandler

public class ExceptionHandler extends Object
  • Field Details

    • LOG

      private static final org.slf4j.Logger LOG
    • catchTypes

      private final List<ClassInfo> catchTypes
    • handlerOffset

      private final int handlerOffset
    • handlerBlock

      private BlockNode handlerBlock
    • blocks

      private final List<BlockNode> blocks
    • handlerRegion

      private IRegion handlerRegion
    • arg

      private InsnArg arg
    • tryBlock

      private TryCatchBlockAttr tryBlock
    • isFinally

      private boolean isFinally
    • removed

      private boolean removed
  • Constructor Details

    • ExceptionHandler

      private ExceptionHandler(int addr)
  • Method Details

    • build

      public static ExceptionHandler build(MethodNode mth, int addr, @Nullable @Nullable ClassInfo type)
    • addCatchType

      public boolean addCatchType(MethodNode mth, @Nullable @Nullable ClassInfo type)
      Add exception type to catch block
      Parameters:
      type - - null for 'all' or 'Throwable' handler
    • addCatchTypes

      public void addCatchTypes(MethodNode mth, Collection<ClassInfo> types)
    • getCatchTypes

      public List<ClassInfo> getCatchTypes()
    • getArgType

      public ArgType getArgType()
    • isCatchAll

      public boolean isCatchAll()
    • getHandlerOffset

      public int getHandlerOffset()
    • getHandlerBlock

      public BlockNode getHandlerBlock()
    • setHandlerBlock

      public void setHandlerBlock(BlockNode handlerBlock)
    • getBlocks

      public List<BlockNode> getBlocks()
    • addBlock

      public void addBlock(BlockNode node)
    • getHandlerRegion

      public IRegion getHandlerRegion()
    • setHandlerRegion

      public void setHandlerRegion(IRegion handlerRegion)
    • getArg

      public InsnArg getArg()
    • setArg

      public void setArg(InsnArg arg)
    • setTryBlock

      public void setTryBlock(TryCatchBlockAttr tryBlock)
    • getTryBlock

      public TryCatchBlockAttr getTryBlock()
    • isFinally

      public boolean isFinally()
    • setFinally

      public void setFinally(boolean isFinally)
    • isRemoved

      public boolean isRemoved()
    • getBottomSplitter

      @Nullable public @Nullable BlockNode getBottomSplitter()
    • markForRemove

      public void markForRemove()
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • catchTypeStr

      public String catchTypeStr()
    • toString

      public String toString()
      Overrides:
      toString in class Object