Show / Hide Table of Contents

    Class CilFinallyHandler

    A CIL exception handler that has typical 'finally' behavior: it intercepts 'leave' branches.

    Inheritance
    System.Object
    CilExceptionHandler
    CilFinallyHandler
    Inherited Members
    CilExceptionHandler.IsCatchAll
    System.Object.ToString()
    System.Object.Equals(System.Object)
    System.Object.Equals(System.Object, System.Object)
    System.Object.ReferenceEquals(System.Object, System.Object)
    System.Object.GetHashCode()
    System.Object.GetType()
    System.Object.MemberwiseClone()
    Namespace: Flame.Clr.Analysis
    Assembly: Flame.Clr.dll
    Syntax
    public sealed class CilFinallyHandler : CilExceptionHandler

    Constructors

    | Improve this Doc View Source

    CilFinallyHandler(BasicBlockTag, BasicBlockTag)

    Creates a 'finally' exception handler.

    Declaration
    public CilFinallyHandler(BasicBlockTag landingPad, BasicBlockTag leavePad)
    Parameters
    Type Name Description
    BasicBlockTag landingPad

    The landing pad to redirect flow to when an exception gets thrown.

    BasicBlockTag leavePad

    A special landing pad with zero parameters that is jumped to when the finally handler is to be run in the absence of an exception. The leave pad corresponds to the happy path.

    Properties

    | Improve this Doc View Source

    HandledExceptionTypes

    Gets the list of types supported by this exception handler. This property is null if the handler catches all exceptions.

    Declaration
    public override IReadOnlyList<IType> HandledExceptionTypes { get; }
    Property Value
    Type Description
    System.Collections.Generic.IReadOnlyList<IType>

    A list of exception types or null.

    Overrides
    CilExceptionHandler.HandledExceptionTypes
    | Improve this Doc View Source

    LandingPad

    Gets the landing pad basic block to which flow is redirected when an exception is thrown.

    Declaration
    public override BasicBlockTag LandingPad { get; }
    Property Value
    Type Description
    BasicBlockTag

    A basic block tag.

    Overrides
    CilExceptionHandler.LandingPad
    | Improve this Doc View Source

    LeavePad

    A special landing pad with zero parameters that is jumped to when the finally handler is to be run in the absence of an exception. The leave pad corresponds to the happy path.

    Declaration
    public BasicBlockTag LeavePad { get; }
    Property Value
    Type Description
    BasicBlockTag

    The leave pad.

    • Improve this Doc
    • View Source
    Back to top Generated by DocFX