class Let

Declaration

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

Description

A let-expression, e.g. let x=t; u. This is a pseduo-term; it will be lowered to instructions in a CFG.

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

Inherits from: SExpr

Member Variables

private clang::threadSafety::til::Variable* VarDecl
private clang::threadSafety::til::SExpr* Body

Inherited from SExpr:

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

Method Overview

  • public Let(clang::threadSafety::til::Variable * Vd, clang::threadSafety::til::SExpr * Bd)
  • public Let(const clang::threadSafety::til::Let & L, clang::threadSafety::til::Variable * Vd, clang::threadSafety::til::SExpr * Bd)
  • public clang::threadSafety::til::SExpr * body()
  • public const clang::threadSafety::til::SExpr * body() const
  • public static bool classof(const clang::threadSafety::til::SExpr * E)
  • public template <class C>typename C::CType compare(const clang::threadSafety::til::Let * E, C & Cmp) const
  • public template <class V>typename V::R_SExpr traverse(V & Vs, typename V::R_Ctx Ctx)
  • public clang::threadSafety::til::Variable * variableDecl()
  • public const clang::threadSafety::til::Variable * variableDecl() const

Inherited from SExpr:

Methods

Let(clang::threadSafety::til::Variable* Vd,
    clang::threadSafety::til::SExpr* Bd)

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

Parameters

clang::threadSafety::til::Variable* Vd
clang::threadSafety::til::SExpr* Bd

Let(const clang::threadSafety::til::Let& L,
    clang::threadSafety::til::Variable* Vd,
    clang::threadSafety::til::SExpr* Bd)

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

Parameters

const clang::threadSafety::til::Let& L
clang::threadSafety::til::Variable* Vd
clang::threadSafety::til::SExpr* Bd

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

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

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

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

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

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

Parameters

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

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

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

Templates

C

Parameters

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

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

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

Templates

V

Parameters

V& Vs
typename V::R_Ctx Ctx

clang::threadSafety::til::Variable* variableDecl()

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

const clang::threadSafety::til::Variable*
variableDecl() const

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