CodeQL library for Ruby
codeql/ruby-all 4.1.4-dev (changelog, source)
Search

Class EnsureSplitting::EnsureSplit

A split for nodes belonging to an ensure block, which determines how to continue execution after leaving the ensure block. For example, in

begin
  if x
    raise "Exception"
  end
ensure
  puts "Ensure"
end

all control flow nodes in the ensure block have two splits: one representing normal execution of the body (when x evaluates to true), and one representing exceptional execution of the body (when x evaluates to false).

Import path

import codeql.ruby.controlflow.internal.Splitting

Direct supertypes

Indirect supertypes

Predicates

getNestLevel

Gets the nesting level.

getType

Gets the type of this ensure split, that is, how to continue execution after the ensure block.

toString

Gets a textual representation of this split.

Charpred