final class CatchNode extends CFGNode
This node represents an exception handler.
- Source
- CatchNode.scala
- Note
CatchNode
s are made explicit to handle/identify situations where the same exception handlers is responsible for handling multiple different exceptions. This situation generally arises in case of Javas multi-catch expressions.
- Alphabetic
- By Inheritance
- CatchNode
- CFGNode
- Node
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new CatchNode(handler: ExceptionHandler, index: Int)
- handler
The Handler.
- index
The unique index in the exception handler table; this enables us to assign unique nodeids to catch nodes.
- new CatchNode(index: Int, startPC: Int, endPC: Int, handlerPC: Int, catchType: Option[ObjectType])
- index
The index of the underlying exception handler in the exception table.
- startPC
The start pc of the try-block.
- endPC
The pc of the first instruction after the try-block (exclusive!).
- handlerPC
The first pc of the handler block.
- catchType
The type of the handled exception.
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def addPredecessor(predecessor: CFGNode): Unit
- Definition Classes
- CFGNode
- def addPredecessors(predecessor: IterableOnce[CFGNode]): Unit
- Definition Classes
- CFGNode
- def addSuccessor(successor: CFGNode): Unit
- Definition Classes
- CFGNode
- def asBasicBlock: BasicBlock
- Definition Classes
- CFGNode
- final def asCatchNode: CatchNode.this.type
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- val catchType: Option[ObjectType]
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
- def copy(index: Int = this.index, startPC: Int = this.startPC, endPC: Int = this.endPC, handlerPC: Int = this.handlerPC, catchType: Option[ObjectType] = this.catchType): CatchNode
- val endPC: Int
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(other: Any): Boolean
- Definition Classes
- Node → AnyRef → Any
- final def foreachSuccessor(f: (Node) => Unit): Unit
Applies the given function for each successor node.
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- val handlerPC: Int
- final def hasSuccessors: Boolean
Returns
true
if this node has successor nodes. - def hashCode(): Int
The hash code of this node.
The hash code of this node. By default the hash code is the unique id.
- Definition Classes
- Node → AnyRef → Any
- val index: Int
- final def isAbnormalReturnExitNode: Boolean
- final def isBasicBlock: Boolean
- final def isCatchNode: Boolean
- final def isExitNode: Boolean
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def isNormalReturnExitNode: Boolean
- final def isStartOfSubroutine: Boolean
- def mayThrowException: Boolean
Returns
true
if the last instruction of this basic block throws/may throw an exception; whether the exception is handled or not is not relevant!Returns
true
if the last instruction of this basic block throws/may throw an exception; whether the exception is handled or not is not relevant!- Definition Classes
- CFGNode
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def nodeId: Int
An identifier that uniquely identifies this node in the graph to which this node belongs.
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- def predecessors: Set[CFGNode]
- Definition Classes
- CFGNode
- def reachable(reflexive: Boolean = false): Set[CFGNode]
Computes the set of all CFGNodes that are reachable from this one.
- def removePredecessor(predecessor: CFGNode): Unit
- Definition Classes
- CFGNode
- val startPC: Int
- def successors: Set[CFGNode]
- Definition Classes
- CFGNode
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toHRR: Option[String]
Returns a human readable representation (HRR) of this node.
- def toString(): String
- Definition Classes
- CatchNode → AnyRef → Any
- def visualProperties: Map[String, String]
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated