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

Class EqExpr

An equals expression.

x == y

Import path

import codeql.ruby.AST

Direct supertypes

Indirect supertypes

Predicates

getAPrimaryQlClass

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

Inherited predicates

getAChild

Gets a child node of this AstNode.

from AstNode
getAChild

Gets a child of this node, which can also be retrieved using a predicate named pred.

from BinaryOperation
getAControlFlowEntryNode

Gets a control-flow entry node for this statement, if any

from Stmt
getAControlFlowNode

Gets a control-flow node for this statement, if any.

from Stmt
getATarget

Gets a potential target of this call, if any.

from Call
getAnArgument

Gets an argument of this method call.

from Call
getAnOperand

Gets an operand of this operation.

from Operation
getArgument

Gets the nth argument of this method call. In the following example, the result for n=0 is the IntegerLiteral 0, while for n=1 the result is a Pair (whose getKey returns the SymbolLiteral for bar, and getValue returns the IntegerLiteral 1). Keyword arguments like this can be accessed more naturally using the getKeywordArgument(string keyword) predicate. rb foo(0, bar: 1) yield 0, bar: 1

from Call
getBlock

Gets the block of this method call, if any. rb foo.each { |x| puts x }

from MethodCall
getBlockArgument

Gets the block argument of this method call, if any. rb foo(&block)

from MethodCall
getCfgScope

Gets the control-flow scope of this statement, if any.

from Stmt
getConstantValue

Gets the constant value of this expression, if any.

from Expr
getDesugared

Gets the desugared version of this AST node, if any.

from AstNode
getEnclosingCallable

Gets the enclosing callable, if any.

from Stmt
getEnclosingMethod

Gets the enclosing method, if any.

from AstNode
getEnclosingModule

Gets the enclosing module, if any.

from AstNode
getEnclosingToplevel

Gets the enclosing top-level.

from AstNode
getFile

Gets the file of this node.

from AstNode
getKeywordArgument

Gets the value of the keyword argument whose key is keyword, if any. For example, the result for getKeywordArgument("qux") in the following example is the IntegerLiteral 123. rb foo :bar "baz", qux: 123

from Call
getLeftOperand

Gets the left operand of this binary operation.

from BinaryOperation
getLocation

Gets the location of this node.

from AstNode
getMethodName

Gets the name of the method being called. For example, in:

from MethodCall
getNumberOfArguments

Gets the number of arguments of this method call.

from Call
getOperator

Gets the operator of this operation.

from Operation
getParent

Gets the parent of this AstNode, if this node is not a root node.

from AstNode
getPrimaryQlClasses

Gets a comma-separated list of the names of the primary CodeQL classes to which this element belongs.

from AstNode
getReceiver

Gets the receiver of this call, if any. For example:

from MethodCall
getRightOperand

Gets the right operand of this binary operation.

from BinaryOperation
hasBlock

Holds if this method call has a block or block argument.

from MethodCall
isSafeNavigation

Holds if the safe navigation operator (&.) is used in this call. rb foo&.empty?

from MethodCall
isSynthesized

Holds if this node was synthesized to represent an implicit AST node not present in the source code. In the following example method call, the receiver is an implicit self reference, for which there is a synthesized Self node.

from AstNode
toString

Gets a textual representation of this node.

from BinaryOperation