clang 22.0.0git
clang::threadSafety::til::PrettyPrinter< Self, StreamType > Class Template Reference

#include "clang/Analysis/Analyses/ThreadSafetyTraverse.h"

Inheritance diagram for clang::threadSafety::til::PrettyPrinter< Self, StreamType >:
[legend]

Public Member Functions

 PrettyPrinter (bool V=false, bool C=true, bool CS=true)

Static Public Member Functions

static void print (const SExpr *E, StreamType &SS)

Protected Member Functions

Selfself ()
void newline (StreamType &SS)
unsigned precedence (const SExpr *E)
void printBlockLabel (StreamType &SS, const BasicBlock *BB, int index)
void printSExpr (const SExpr *E, StreamType &SS, unsigned P, bool Sub=true)
void printNull (StreamType &SS)
void printFuture (const Future *E, StreamType &SS)
void printUndefined (const Undefined *E, StreamType &SS)
void printWildcard (const Wildcard *E, StreamType &SS)
template<class T>
void printLiteralT (const LiteralT< T > *E, StreamType &SS)
void printLiteralT (const LiteralT< uint8_t > *E, StreamType &SS)
void printLiteral (const Literal *E, StreamType &SS)
void printLiteralPtr (const LiteralPtr *E, StreamType &SS)
void printVariable (const Variable *V, StreamType &SS, bool IsVarDecl=false)
void printFunction (const Function *E, StreamType &SS, unsigned sugared=0)
void printSFunction (const SFunction *E, StreamType &SS)
void printCode (const Code *E, StreamType &SS)
void printField (const Field *E, StreamType &SS)
void printApply (const Apply *E, StreamType &SS, bool sugared=false)
void printSApply (const SApply *E, StreamType &SS)
void printProject (const Project *E, StreamType &SS)
void printCall (const Call *E, StreamType &SS)
void printAlloc (const Alloc *E, StreamType &SS)
void printLoad (const Load *E, StreamType &SS)
void printStore (const Store *E, StreamType &SS)
void printArrayIndex (const ArrayIndex *E, StreamType &SS)
void printArrayAdd (const ArrayAdd *E, StreamType &SS)
void printUnaryOp (const UnaryOp *E, StreamType &SS)
void printBinaryOp (const BinaryOp *E, StreamType &SS)
void printCast (const Cast *E, StreamType &SS)
void printSCFG (const SCFG *E, StreamType &SS)
void printBBInstr (const SExpr *E, StreamType &SS)
void printBasicBlock (const BasicBlock *E, StreamType &SS)
void printPhi (const Phi *E, StreamType &SS)
void printGoto (const Goto *E, StreamType &SS)
void printBranch (const Branch *E, StreamType &SS)
void printReturn (const Return *E, StreamType &SS)
void printIdentifier (const Identifier *E, StreamType &SS)
void printIfThenElse (const IfThenElse *E, StreamType &SS)
void printLet (const Let *E, StreamType &SS)

Static Protected Attributes

static const unsigned Prec_Atom = 0
static const unsigned Prec_Postfix = 1
static const unsigned Prec_Unary = 2
static const unsigned Prec_Binary = 3
static const unsigned Prec_Other = 4
static const unsigned Prec_Decl = 5
static const unsigned Prec_MAX = 6

Detailed Description

template<typename Self, typename StreamType>
class clang::threadSafety::til::PrettyPrinter< Self, StreamType >

Definition at line 399 of file ThreadSafetyTraverse.h.

Constructor & Destructor Documentation

◆ PrettyPrinter()

template<typename Self, typename StreamType>
clang::threadSafety::til::PrettyPrinter< Self, StreamType >::PrettyPrinter ( bool V = false,
bool C = true,
bool CS = true )
inline

Definition at line 411 of file ThreadSafetyTraverse.h.

References clang::C, and V.

Member Function Documentation

◆ newline()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::newline ( StreamType & SS)
inlineprotected

Definition at line 422 of file ThreadSafetyTraverse.h.

Referenced by printBasicBlock(), printBBInstr(), and printSCFG().

◆ precedence()

template<typename Self, typename StreamType>
unsigned clang::threadSafety::til::PrettyPrinter< Self, StreamType >::precedence ( const SExpr * E)
inlineprotected

◆ print()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::print ( const SExpr * E,
StreamType & SS )
inlinestatic

Definition at line 414 of file ThreadSafetyTraverse.h.

References Prec_MAX, and clang::Self.

◆ printAlloc()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printAlloc ( const Alloc * E,
StreamType & SS )
inlineprotected

◆ printApply()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printApply ( const Apply * E,
StreamType & SS,
bool sugared = false )
inlineprotected

◆ printArrayAdd()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printArrayAdd ( const ArrayAdd * E,
StreamType & SS )
inlineprotected

◆ printArrayIndex()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printArrayIndex ( const ArrayIndex * E,
StreamType & SS )
inlineprotected

◆ printBasicBlock()

◆ printBBInstr()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printBBInstr ( const SExpr * E,
StreamType & SS )
inlineprotected

◆ printBinaryOp()

◆ printBlockLabel()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printBlockLabel ( StreamType & SS,
const BasicBlock * BB,
int index )
inlineprotected

Definition at line 479 of file ThreadSafetyTraverse.h.

References clang::threadSafety::til::BasicBlock::blockID().

Referenced by printBranch(), and printGoto().

◆ printBranch()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printBranch ( const Branch * E,
StreamType & SS )
inlineprotected

◆ printCall()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printCall ( const Call * E,
StreamType & SS )
inlineprotected

◆ printCast()

◆ printCode()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printCode ( const Code * E,
StreamType & SS )
inlineprotected

◆ printField()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printField ( const Field * E,
StreamType & SS )
inlineprotected

◆ printFunction()

◆ printFuture()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printFuture ( const Future * E,
StreamType & SS )
inlineprotected

◆ printGoto()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printGoto ( const Goto * E,
StreamType & SS )
inlineprotected

◆ printIdentifier()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printIdentifier ( const Identifier * E,
StreamType & SS )
inlineprotected

◆ printIfThenElse()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printIfThenElse ( const IfThenElse * E,
StreamType & SS )
inlineprotected

◆ printLet()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printLet ( const Let * E,
StreamType & SS )
inlineprotected

◆ printLiteral()

◆ printLiteralPtr()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printLiteralPtr ( const LiteralPtr * E,
StreamType & SS )
inlineprotected

◆ printLiteralT() [1/2]

template<typename Self, typename StreamType>
template<class T>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printLiteralT ( const LiteralT< T > * E,
StreamType & SS )
inlineprotected

Definition at line 536 of file ThreadSafetyTraverse.h.

References clang::threadSafety::til::LiteralT< T >::value().

Referenced by printLiteral().

◆ printLiteralT() [2/2]

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printLiteralT ( const LiteralT< uint8_t > * E,
StreamType & SS )
inlineprotected

◆ printLoad()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printLoad ( const Load * E,
StreamType & SS )
inlineprotected

◆ printNull()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printNull ( StreamType & SS)
inlineprotected

Definition at line 519 of file ThreadSafetyTraverse.h.

◆ printPhi()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printPhi ( const Phi * E,
StreamType & SS )
inlineprotected

◆ printProject()

◆ printReturn()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printReturn ( const Return * E,
StreamType & SS )
inlineprotected

◆ printSApply()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printSApply ( const SApply * E,
StreamType & SS )
inlineprotected

◆ printSCFG()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printSCFG ( const SCFG * E,
StreamType & SS )
inlineprotected

Definition at line 812 of file ThreadSafetyTraverse.h.

References newline(), and printBasicBlock().

◆ printSExpr()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printSExpr ( const SExpr * E,
StreamType & SS,
unsigned P,
bool Sub = true )
inlineprotected

◆ printSFunction()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printSFunction ( const SFunction * E,
StreamType & SS )
inlineprotected

◆ printStore()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printStore ( const Store * E,
StreamType & SS )
inlineprotected

◆ printUnaryOp()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printUnaryOp ( const UnaryOp * E,
StreamType & SS )
inlineprotected

◆ printUndefined()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printUndefined ( const Undefined * E,
StreamType & SS )
inlineprotected

Definition at line 527 of file ThreadSafetyTraverse.h.

◆ printVariable()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printVariable ( const Variable * V,
StreamType & SS,
bool IsVarDecl = false )
inlineprotected

Definition at line 626 of file ThreadSafetyTraverse.h.

References V, and clang::threadSafety::til::Variable::VK_SFun.

Referenced by printLet().

◆ printWildcard()

template<typename Self, typename StreamType>
void clang::threadSafety::til::PrettyPrinter< Self, StreamType >::printWildcard ( const Wildcard * E,
StreamType & SS )
inlineprotected

Definition at line 531 of file ThreadSafetyTraverse.h.

◆ self()

Member Data Documentation

◆ Prec_Atom

template<typename Self, typename StreamType>
const unsigned clang::threadSafety::til::PrettyPrinter< Self, StreamType >::Prec_Atom = 0
staticprotected

Definition at line 427 of file ThreadSafetyTraverse.h.

Referenced by precedence(), printArrayAdd(), and printFuture().

◆ Prec_Binary

template<typename Self, typename StreamType>
const unsigned clang::threadSafety::til::PrettyPrinter< Self, StreamType >::Prec_Binary = 3
staticprotected

Definition at line 430 of file ThreadSafetyTraverse.h.

Referenced by precedence(), and printBinaryOp().

◆ Prec_Decl

template<typename Self, typename StreamType>
const unsigned clang::threadSafety::til::PrettyPrinter< Self, StreamType >::Prec_Decl = 5
staticprotected

◆ Prec_MAX

template<typename Self, typename StreamType>
const unsigned clang::threadSafety::til::PrettyPrinter< Self, StreamType >::Prec_MAX = 6
staticprotected

◆ Prec_Other

template<typename Self, typename StreamType>
const unsigned clang::threadSafety::til::PrettyPrinter< Self, StreamType >::Prec_Other = 4
staticprotected

◆ Prec_Postfix

template<typename Self, typename StreamType>
const unsigned clang::threadSafety::til::PrettyPrinter< Self, StreamType >::Prec_Postfix = 1
staticprotected

◆ Prec_Unary

template<typename Self, typename StreamType>
const unsigned clang::threadSafety::til::PrettyPrinter< Self, StreamType >::Prec_Unary = 2
staticprotected

Definition at line 429 of file ThreadSafetyTraverse.h.

Referenced by precedence(), printCast(), printIfThenElse(), and printUnaryOp().


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