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

Class ConstantReadAccess

A use (read) of a constant.

For example, the right-hand side of the assignment in:

x = Foo

Or the superclass Bar in this example:

class Foo < Bar
end

Import path

import codeql.ruby.AST

Direct supertypes

Indirect supertypes

Known direct subtypes

    Predicates

    getAPrimaryQlClass

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

    getAQualifiedName

    Gets a fully qualified name for this constant read, based on the context in which it occurs.

    getModule

    Gets the module that this read access resolves to, if any.

    getValue

    Gets the value being read, if any. For example, in

    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 ConstantAccess
    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
    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
    getName

    Gets the name of the constant being accessed.

    from ConstantAccess
    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
    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().

    from ConstantAccess
    hasGlobalScope

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

    from ConstantAccess
    hasName

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

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

    Charpred