clang  3.7.0
Public Member Functions | Static Public Member Functions | List of all members
clang::threadSafety::til::Project Class Reference

Project a named slot from a C++ struct or class. More...

#include <ThreadSafetyTIL.h>

Inheritance diagram for clang::threadSafety::til::Project:
[legend]
Collaboration diagram for clang::threadSafety::til::Project:
[legend]

Public Member Functions

 Project (SExpr *R, StringRef SName)
 
 Project (SExpr *R, const clang::ValueDecl *Cvd)
 
 Project (const Project &P, SExpr *R)
 
SExprrecord ()
 
const SExprrecord () const
 
const clang::ValueDeclclangDecl () const
 
bool isArrow () const
 
void setArrow (bool b)
 
StringRef slotName () const
 
template<class V >
V::R_SExpr traverse (V &Vs, typename V::R_Ctx Ctx)
 
template<class C >
C::CType compare (const Project *E, C &Cmp) const
 
- Public Member Functions inherited from clang::threadSafety::til::SExpr
TIL_Opcode opcode () const
 
void * operator new (size_t S, MemRegionRef &R)
 
void operator delete (void *)=delete
 SExpr objects cannot be deleted. More...
 
unsigned id () const
 
BasicBlockblock () const
 
void setID (BasicBlock *B, unsigned id)
 Set the basic block and instruction ID for this expression. More...
 

Static Public Member Functions

static bool classof (const SExpr *E)
 

Additional Inherited Members

- Protected Member Functions inherited from clang::threadSafety::til::SExpr
 SExpr (TIL_Opcode Op)
 
 SExpr (const SExpr &E)
 
- Protected Attributes inherited from clang::threadSafety::til::SExpr
const unsigned char Opcode
 
unsigned char Reserved
 
unsigned short Flags
 
unsigned SExprID
 
BasicBlockBlock
 

Detailed Description

Project a named slot from a C++ struct or class.

Definition at line 908 of file ThreadSafetyTIL.h.

Constructor & Destructor Documentation

clang::threadSafety::til::Project::Project ( SExpr R,
StringRef  SName 
)
inline

Definition at line 912 of file ThreadSafetyTIL.h.

clang::threadSafety::til::Project::Project ( SExpr R,
const clang::ValueDecl Cvd 
)
inline

Definition at line 915 of file ThreadSafetyTIL.h.

clang::threadSafety::til::Project::Project ( const Project P,
SExpr R 
)
inline

Definition at line 918 of file ThreadSafetyTIL.h.

Member Function Documentation

const clang::ValueDecl* clang::threadSafety::til::Project::clangDecl ( ) const
inline
static bool clang::threadSafety::til::Project::classof ( const SExpr E)
inlinestatic

Definition at line 910 of file ThreadSafetyTIL.h.

References clang::threadSafety::til::SExpr::opcode().

template<class C >
C::CType clang::threadSafety::til::Project::compare ( const Project E,
C &  Cmp 
) const
inline

Definition at line 947 of file ThreadSafetyTIL.h.

References record().

bool clang::threadSafety::til::Project::isArrow ( ) const
inline
SExpr* clang::threadSafety::til::Project::record ( )
inline
const SExpr* clang::threadSafety::til::Project::record ( ) const
inline

Definition at line 923 of file ThreadSafetyTIL.h.

void clang::threadSafety::til::Project::setArrow ( bool  b)
inline

Definition at line 928 of file ThreadSafetyTIL.h.

References clang::threadSafety::til::SExpr::Flags.

StringRef clang::threadSafety::til::Project::slotName ( ) const
inline
template<class V >
V::R_SExpr clang::threadSafety::til::Project::traverse ( V &  Vs,
typename V::R_Ctx  Ctx 
)
inline

Definition at line 941 of file ThreadSafetyTIL.h.


The documentation for this class was generated from the following file: