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

Class HashPattern

A hash pattern, for example:

in {}
in { a: 1 }
in { a: 1, **rest }
in { a: 1, **nil }
in Node{ label: , children: [] }

Import path

import codeql.ruby.AST

Direct supertypes

Indirect supertypes

Known direct subtypes

    Predicates

    allowsUnmatchedElements

    Holds if this pattern is terminated by **nil indicating that the pattern does not permit any unmatched remaining pairs.

    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.

    getClass

    Gets the class this pattern matches objects against, if any.

    getKey

    Gets the key of the nth pair.

    getRestVariableAccess

    Gets the variable of the keyword rest token, if any. For example rest in: rb in { a: 1, **rest }

    getValue

    Gets the value of the nth pair.

    getValueByKey

    Gets the value for a given key name.

    toString

    Gets a textual representation of this node.

    Inherited predicates

    getAChild

    Gets a child node of this AstNode.

    from AstNode
    getDesugared

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

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

    Charpred