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

Class NestedCompletion

A nested completion. For example, in

def m
  while x >= 0
    x -= 1
    if num > 100
      break
    end
  end
  puts "done"
end

the while loop can have a nested completion where the inner completion is a break and the outer completion is a simple successor.

Import path

import codeql.ruby.controlflow.internal.Completion

Direct supertypes

Indirect supertypes

Known direct subtypes

    Fields

    Predicates

    getAnInnerCompatibleCompletion

    Gets a completion that is compatible with the inner completion.

    getNestLevel

    Gets the level of this nested completion.

    toString

    Gets a textual representation of this completion.

    Inherited predicates

    continuesLoop

    Holds if this completion will continue a loop when it is the completion of a loop body.

    from Completion
    getAMatchingSuccessorType

    Gets a successor type that matches this completion.

    from Completion
    getInnerCompletion

    Gets the inner completion. This is either the inner completion, when the completion is nested, or the completion itself.

    from Completion
    getOuterCompletion

    Gets the outer completion. This is either the outer completion, when the completion is nested, or the completion itself.

    from Completion
    isValidFor

    Holds if this completion is valid for node n.

    from Completion

    Charpred