class Cast

Declaration

class Cast : public SExpr { /* full declaration omitted */ };

Description

Cast expressions. Cast expressions are essentially unary operations, but we treat them as a distinct AST node because they only change the type of the result.

Declared at: clang/include/clang/Analysis/Analyses/ThreadSafetyTIL.h:1255

Inherits from: SExpr

Member Variables

private clang::threadSafety::til::SExpr* Expr0

Inherited from SExpr:

protected Opcode
protected Reserved = 0
protected Flags = 0
protected SExprID = 0
protected Block = nullptr

Method Overview

  • public Cast(clang::threadSafety::til::TIL_CastOpcode Op, clang::threadSafety::til::SExpr * E)
  • public Cast(const clang::threadSafety::til::Cast & C, clang::threadSafety::til::SExpr * E)
  • public clang::threadSafety::til::TIL_CastOpcode castOpcode() const
  • public static bool classof(const clang::threadSafety::til::SExpr * E)
  • public template <class C>typename C::CType compare(const clang::threadSafety::til::Cast * E, C & Cmp) const
  • public clang::threadSafety::til::SExpr * expr()
  • public const clang::threadSafety::til::SExpr * expr() const
  • public template <class V>typename V::R_SExpr traverse(V & Vs, typename V::R_Ctx Ctx)

Inherited from SExpr:

Methods

Cast(clang::threadSafety::til::TIL_CastOpcode Op,
     clang::threadSafety::til::SExpr* E)

Declared at: clang/include/clang/Analysis/Analyses/ThreadSafetyTIL.h:1257

Parameters

clang::threadSafety::til::TIL_CastOpcode Op
clang::threadSafety::til::SExpr* E

Cast(const clang::threadSafety::til::Cast& C,
     clang::threadSafety::til::SExpr* E)

Declared at: clang/include/clang/Analysis/Analyses/ThreadSafetyTIL.h:1258

Parameters

const clang::threadSafety::til::Cast& C
clang::threadSafety::til::SExpr* E

clang::threadSafety::til::TIL_CastOpcode
castOpcode() const

Declared at: clang/include/clang/Analysis/Analyses/ThreadSafetyTIL.h:1262

static bool classof(
    const clang::threadSafety::til::SExpr* E)

Declared at: clang/include/clang/Analysis/Analyses/ThreadSafetyTIL.h:1260

Parameters

const clang::threadSafety::til::SExpr* E

template <class C>
typename C::CType compare(
    const clang::threadSafety::til::Cast* E,
    C& Cmp) const

Declared at: clang/include/clang/Analysis/Analyses/ThreadSafetyTIL.h:1276

Templates

C

Parameters

const clang::threadSafety::til::Cast* E
C& Cmp

clang::threadSafety::til::SExpr* expr()

Declared at: clang/include/clang/Analysis/Analyses/ThreadSafetyTIL.h:1266

const clang::threadSafety::til::SExpr* expr()
    const

Declared at: clang/include/clang/Analysis/Analyses/ThreadSafetyTIL.h:1267

template <class V>
typename V::R_SExpr traverse(
    V& Vs,
    typename V::R_Ctx Ctx)

Declared at: clang/include/clang/Analysis/Analyses/ThreadSafetyTIL.h:1270

Templates

V

Parameters

V& Vs
typename V::R_Ctx Ctx