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

Module MakeWithSplitting::BasicBlocks

Provides a basic block construction on top of the control flow graph.

Import path

import codeql.controlflow.Cfg

Classes

AnnotatedExitBasicBlock

An annotated exit basic block, that is, a basic block that contains an annotated exit node.

ConditionBasicBlock

A basic block that terminates in a condition, splitting the subsequent control flow.

EntryBasicBlock

An entry basic block, that is, a basic block whose first node is an entry node.

ExitBasicBlock

An exit basic block, that is, a basic block whose last node is an exit node.

JoinBasicBlock

A basic block with more than one predecessor.

JoinPredecessorBasicBlock

A basic block that is an immediate predecessor of a join block.

Aliases

BasicBlock

A basic block, that is, a maximal straight-line sequence of control flow nodes without branches or joins.

dominatingEdge

Holds if bb1 has bb2 as a direct successor and the edge between bb1 and bb2 is a dominating edge.