CodeQL library for Rust
codeql/rust-all 0.1.16 (changelog, source)
Search

Class Impl::TypeBound

A type bound in a trait or generic parameter.

For example:

fn foo<T: Debug>(t: T) {}
//        ^^^^^
fn bar(value: impl for<'a> From<&'a str>) {}
//                 ^^^^^^^^^^^^^^^^^^^^^

Import path

import codeql.rust.elements.internal.TypeBoundImpl

Direct supertypes

Indirect supertypes

Predicates

toAbbreviatedString

INTERNAL: Do not use.

Inherited predicates

fromSource

Holds if this element is from source code.

from Locatable
getACfgNode

Gets a control flow node for this AST node, if any.

from AstNode
getAPrimaryQlClass

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

from TypeBound
getEnclosingBlock

Gets the block that encloses this node, if any.

from AstNode
getEnclosingCallable

Gets the immediately enclosing callable of this node, if any.

from AstNode
getEnclosingCfgScope

Gets the CFG scope that encloses this node, if any.

from AstNode
getFile

Gets the primary file where this element occurs.

from Locatable
getForBinder

Gets the for binder of this type bound, if it exists.

from TypeBound
getLifetime

Gets the lifetime of this type bound, if it exists.

from TypeBound
getLocationfrom Locatable
getParentNode

Gets the nearest enclosing parent of this node, which is also an AstNode, if any.

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

Gets the type representation of this type bound, if it exists.

from TypeBound
getUseBoundGenericArgs

Gets the use bound generic arguments of this type bound, if it exists.

from TypeBound
hasForBinder

Holds if getForBinder() exists.

from TypeBound
hasLifetime

Holds if getLifetime() exists.

from TypeBound
hasTypeRepr

Holds if getTypeRepr() exists.

from TypeBound
hasUseBoundGenericArgs

Holds if getUseBoundGenericArgs() exists.

from TypeBound
isAsync

Holds if this type bound is async.

from TypeBound
isConst

Holds if this type bound is const.

from TypeBound
isFromMacroExpansion

Holds if this node exists only as the result of a macro expansion.

from AstNode
isInMacroExpansion

Holds if this node is inside a macro expansion.

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

INTERNAL: Do not use.

from Element