qtil
advanced-security/qtil-swift 0.0.3
Search

Class Impl::Pattern

A syntactic construct that can be matched against an expression, occurring in switch cases, conditions, and variable bindings.

Import path

import codeql.swift.elements.pattern.internal.PatternImpl

Direct supertypes

Indirect supertypes

Known direct subtypes

Predicates

getEnclosingPattern

Gets the parent pattern of this pattern, if any.

getImmediateEnclosingPattern

Gets the parent pattern of this pattern, if any.

getImmediateMatchingExpr

Gets the expression that this top-level pattern is matched against, if any.

getMatchingExpr

Gets the expression that this pattern is matched against, if any. The expression and the pattern need not be top-level children of a pattern-matching construct, but they must match each other syntactically.

hasMatchingExpr

Holds if this pattern is matched against an expression.

Inherited predicates

getAPrimaryQlClass

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

from Element
getEnclosingCallable

Gets the nearest Callable that contains this AST node, if any. This includes (auto)closures, functions, methods, (de)initializers, and accessors.

from AstNode
getEnclosingDecl

Gets the nearest declaration that contains this AST node, if any.

from AstNode
getEnclosingFunction

Gets the nearest function definition that contains this AST node, if any. This includes functions, methods, (de)initializers, and accessors, but not closures.

from AstNode
getFile

Gets the primary file where this element occurs.

from Locatable
getFullyUnresolvedfrom Element
getImmediateType

Gets the type of this pattern, if it exists.

from Pattern
getLocation

Gets the location associated with this element in the code, if it exists.

from Locatable
getPrimaryQlClasses

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

from Element
getResolveStep

Gets the most immediate element that should substitute this element in the explicit AST, if any. Classes can override this to indicate this node should be in the “hidden” AST, mostly reserved for conversions and syntactic sugar nodes like parentheses.

from Element
getType

Gets the type of this pattern, if it exists.

from Pattern
hasLocation

Holds if getLocation() exists.

from Locatable
hasType

Holds if getType() exists.

from Pattern
isUnknown

Holds if this element is unknown.

from Element
resolve

Gets the element that should substitute this element in the explicit AST, applying getResolveStep transitively.

from Element
toString

Gets the string representation of this element.

from Element