CodeQL library for C#
Search

Class SpecificCatchClause

A catch clause that catches a specific exception.

For example, the catch clause on line 4 in

try {
  ...
}
catch (System.IO.IOException ex) {
  ...
}

The exception variable (ex) is optional.

Import path

import csharp

Direct supertypes

Indirect supertypes

Known direct subtypes

    Predicates

    getAPrimaryQlClass

    Gets the name of a primary CodeQL class to which this element belongs.

    getVariable

    Gets the local variable of this catch clause, if any.

    getVariableDeclExpr

    Gets the local variable declaration of this catch clause, if any.

    toString

    Gets a textual representation of this element.

    Inherited predicates

    controlsBlock

    Holds if basic block controlled is controlled by this control flow element with conditional value s. That is, controlled can only be reached from the callable entry point by going via the s edge out of some basic block ending with this element.

    from ControlFlowElement
    controlsBlock

    DEPRECATED: Use controlsBlock/3 instead.

    from ControlFlowElement
    controlsElement

    DEPRECATED.

    from ControlFlowElement
    fromLibrary

    Holds if this element is from an assembly.

    from Element
    fromSource

    Holds if this element is from source code.

    from Element
    getAChild

    Gets a child of this element, if any.

    from Element
    getAChildExpr

    Gets a child expression of this element, if any.

    from ExprOrStmtParent
    getAChildStmt

    Gets a child statement of this element, if any.

    from ExprOrStmtParent
    getAControlFlowEntryNode

    Gets a first control flow node executed within this element.

    from ControlFlowElement
    getAControlFlowExitNode

    Gets a potential last control flow node executed within this element.

    from ControlFlowElement
    getAControlFlowNode

    Gets a control flow node for this element. That is, a node in the control flow graph that corresponds to this element.

    from ControlFlowElement
    getALocation

    Gets a location of this element, including sources and assemblies.

    from Stmt
    getAReachableElement

    Gets an element that is reachable from this element.

    from ControlFlowElement
    getAssembly

    Gets the assembly that this element was compiled into.

    from ControlFlowElement
    getBlock

    Gets the block of this catch clause.

    from CatchClause
    getCaughtExceptionType

    Gets the type of the exception caught. For example, the type of the exception caught on line 4 is System.IO.IOException in

    from CatchClause
    getChild

    Gets the ith child of this element (zero-based).

    from ExprOrStmtParent
    getChildExpr

    Gets the ith child expression of this element (zero-based).

    from ExprOrStmtParent
    getChildStmt

    Gets the ith child statement of this element (zero-based).

    from ExprOrStmtParent
    getEnclosingCallable

    Gets the enclosing callable of this statement.

    from Stmt
    getFile

    Gets the file containing this element.

    from Element
    getFilterClause

    Gets the catch filter clause, if any. For example, the filter expression of the catch clause on line 4 is ex.HResult == 1 in

    from CatchClause
    getIndex

    Gets the index of this element among its parent’s other children (zero-based).

    from Element
    getLanguage

    Gets the “language” of this program element, as defined by the extension of the filename. For example, C# has language “cs”, and Visual Basic has language “vb”.

    from Element
    getLocation

    Gets the location of this element. Where an element has locations in source and assemblies, choose the source location. If there are multiple assembly locations, choose only one.

    from Element
    getNumberOfChildren

    Gets the number of children of this element.

    from Element
    getParent

    Gets the parent of this element, if any.

    from Element
    getTryStmt

    Gets the try statement that this catch clause belongs to.

    from CatchClause
    hasFilterClause

    Holds if this catch clause has a filter.

    from CatchClause
    isLast

    Holds if this is the last catch clause in the try statement that it belongs to.

    from CatchClause
    isLive

    Holds if this element is live, that is this element can be reached from the entry point of its enclosing callable.

    from ControlFlowElement
    reachableFrom

    Holds if the current element is reachable from src.

    from ControlFlowElement
    stripSingletonBlocks

    Gets the singleton statement contained in this statement, by removing enclosing block statements.

    from Stmt
    toStringWithTypes

    Gets the full textual representation of this element, including type information.

    from Element

    Charpred