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

Class SingletonClass

A definition of a singleton class on an object.

class << foo
  def bar
    p 'bar'
  end
end

Import path

import codeql.ruby.AST

Direct supertypes

Indirect supertypes

Predicates

getAChild

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

getAPrimaryQlClass

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

getValue

Gets the expression resulting in the object on which the singleton class is defined. In the following example, the result is the Expr for foo:

toString

Gets a textual representation of this node.

Inherited predicates

getAChild

Gets a child node of this AstNode.

from AstNode
getAClass

Gets a class defined in this module/class.

from ModuleBase
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
getAMethod

Gets a method defined in this module/class.

from ModuleBase
getAModule

Gets a module defined in this module/class.

from ModuleBase
getARescue

Gets a rescue clause in this block.

from BodyStmt
getAStmt

Gets a statement in this sequence.

from StmtSequence
getAVariable

Gets a variable declared in this scope.

from Scope
getAnAncestorExpr

Gets an expression denoting the super class or an included or prepended module.

from ModuleBase
getCfgScope

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

from Stmt
getClass

Gets the class named name in this module/class, if any.

from ModuleBase
getConstant

Gets the value of the constant named name, if any.

from ModuleBase
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
getElse

Gets the else clause in this block, if any.

from BodyStmt
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
getEnsure

Gets the ensure clause in this block, if any.

from BodyStmt
getFile

Gets the file of this node.

from AstNode
getLastStmt

Gets the last statement in this sequence, if any.

from StmtSequence
getLocation

Gets the location of this node.

from AstNode
getMethod

Gets the method named name in this module/class, if any.

from ModuleBase
getModule

Gets the representation of the run-time value of this module or class.

from ModuleBase
getModule

Gets the module named name in this module/class, if any.

from ModuleBase
getModuleSelfVariable

Gets the self variable in the module-level scope.

from ModuleBase
getNamespaceOrToplevel

Gets the nearest enclosing Namespace or Toplevel, possibly this module itself.

from ModuleBase
getNumberOfStatements

Gets the number of statements in this sequence.

from StmtSequence
getOuterScope

Gets the outer scope, if any.

from Scope
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
getRescue

Gets the nth rescue clause in this block.

from BodyStmt
getStmt

Gets the nth statement in this sequence.

from BodyStmt
getVariable

Gets the variable named name declared in this scope.

from Scope
hasEnsure

Holds if this block has an ensure block.

from BodyStmt
isEmpty

Holds if this sequence has no statements.

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

Charpred