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

Class DataFlow::PairNode

A representation of a pair such as K => V or K: V.

Unlike most expressions, pairs do not evaluate to actual objects at runtime and their nodes cannot generally be expected to have meaningful data flow edges. This node simply provides convenient access to the key and value as data flow nodes.

Import path

import ruby

Direct supertypes

Indirect supertypes

Predicates

getKey

Gets the key expression of this pair, such as the K in K => V or K: V.

getValue

Gets the value expression of this pair, such as the V in K => V or K: V.

hasKeyAndValue

Holds if this pair is of form key => value or key: value.

Inherited predicates

asCallable

Gets the callable corresponding to this block, lambda expression, or call to proc or lambda.

from Node
asExpr

Gets the expression corresponding to this node, if any.

from Node
asParameter

Gets the parameter corresponding to this node, if any.

from Node
backtrack

Starts backtracking from this node using API graphs.

from Node
getALocalSource

Gets a local source node from which data may flow to this node in zero or more local data-flow steps.

from Node
getAPredecessor

Gets a data flow node from which data may flow to this node in one local step.

from Node
getASuccessor

Gets a data flow node to which data may flow from this node in one local step.

from Node
getConstantValue

Gets the constant value of this expression, if any.

from Node
getEnclosingMethod

Gets the enclosing method, if any.

from Node
getExprNode

Gets the expression corresponding to this node.

from ExprNode
getLocation

Gets the location of this node.

from Node
hasLocationInfo

Holds if this element is at the specified location. The location spans column startcolumn of line startline to column endcolumn of line endline in file filepath. For more information, see Locations.

from Node
toString

Gets a textual representation of this node.

from Node

Charpred