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

Class ConstantAccess

An access to a constant.

Import path

import codeql.ruby.AST

Direct supertypes

Indirect supertypes

Known direct subtypes

Predicates

getAChild

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

getName

Gets the name of the constant being accessed.

getScopeExpr

Gets the expression used in the access’s scope resolution operation, if any. In the following example, the result is the Call expression for foo().

hasGlobalScope

Holds if the access uses the scope resolution operator to refer to the global scope, as in this example:

hasName

Holds if the name of the constant being accessed is name.

toString

Gets a textual representation of this node.

Inherited predicates

getAChild

Gets a child node of this AstNode.

from AstNode
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
getAPrimaryQlClass

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

from AstNode
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
getLocation

Gets the location of this node.

from AstNode
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
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