LLVM API Documentation

llvm::Serializer Class Reference

#include <Serialize.h>

Collaboration diagram for llvm::Serializer:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 Serializer (BitstreamWriter &stream)
 ~Serializer ()
template<typename T>
void Emit (const T &X)
void EmitInt (uint64_t X)
void EmitSInt (int64_t X)
void EmitBool (bool X)
void EmitCStr (const char *beg, const char *end)
void EmitCStr (const char *cstr)
void EmitPtr (const void *ptr)
template<typename T>
void EmitRef (const T &ref)
template<typename T>
void EmitOwnedPtr (T *ptr)
template<typename T1, typename T2>
void BatchEmitOwnedPtrs (T1 *p1, T2 *p2)
template<typename T1, typename T2, typename T3>
void BatchEmitOwnedPtrs (T1 *p1, T2 *p2, T3 *p3)
template<typename T1, typename T2, typename T3, typename T4>
void BatchEmitOwnedPtrs (T1 *p1, T2 *p2, T3 *p3, T4 &p4)
template<typename T>
void BatchEmitOwnedPtrs (unsigned NumPtrs, T *const *Ptrs)
template<typename T1, typename T2>
void BatchEmitOwnedPtrs (unsigned NumT1Ptrs, T1 *const *Ptrs, T2 *p2)
template<typename T1, typename T2, typename T3>
void BatchEmitOwnedPtrs (unsigned NumT1Ptrs, T1 *const *Ptrs, T2 *p2, T3 *p3)
template<typename T>
Emitter0< TMakeEmitter ()
template<typename T, typename Arg1>
Emitter1< T, Arg1 > MakeEmitter (Arg1 a1)
template<typename T, typename Arg1, typename Arg2>
Emitter2< T, Arg1, Arg2 > MakeEmitter (Arg1 a1, Arg2 a2)
bool isRegistered (const void *p) const
void FlushRecord ()
void EnterBlock (unsigned BlockID=8, unsigned CodeLen=3)
void ExitBlock ()

Classes

struct  Emitter0
struct  Emitter1
struct  Emitter2


Detailed Description

Definition at line 25 of file Serialize.h.


Constructor & Destructor Documentation

Serializer::Serializer ( BitstreamWriter stream  )  [explicit]

Definition at line 23 of file Serialize.cpp.

Serializer::~Serializer (  ) 


Member Function Documentation

template<typename T>
void llvm::Serializer::Emit ( const T X  )  [inline]

Definition at line 42 of file Serialize.h.

Referenced by llvm::APFloat::Emit().

void Serializer::EmitInt ( uint64_t  X  ) 

Definition at line 55 of file Serialize.cpp.

References llvm::SmallVectorImpl< T >::push_back().

Referenced by llvm::APInt::Emit(), EmitBool(), EmitPtr(), and EmitSInt().

void Serializer::EmitSInt ( int64_t  X  ) 

Definition at line 60 of file Serialize.cpp.

References EmitInt().

void llvm::Serializer::EmitBool ( bool  X  )  [inline]

Definition at line 51 of file Serialize.h.

References EmitInt().

void Serializer::EmitCStr ( const char *  beg,
const char *  end 
)

Definition at line 67 of file Serialize.cpp.

References llvm::SmallVectorImpl< T >::push_back().

Referenced by EmitCStr().

void Serializer::EmitCStr ( const char *  cstr  ) 

Definition at line 76 of file Serialize.cpp.

References EmitCStr().

void llvm::Serializer::EmitPtr ( const void *  ptr  )  [inline]

Definition at line 55 of file Serialize.h.

References EmitInt().

Referenced by BatchEmitOwnedPtrs(), EmitOwnedPtr(), and EmitRef().

template<typename T>
void llvm::Serializer::EmitRef ( const T ref  )  [inline]

Definition at line 58 of file Serialize.h.

References EmitPtr().

template<typename T>
void llvm::Serializer::EmitOwnedPtr ( T ptr  )  [inline]

Definition at line 63 of file Serialize.h.

References EmitPtr().

template<typename T1, typename T2>
void llvm::Serializer::BatchEmitOwnedPtrs ( T1 *  p1,
T2 *  p2 
) [inline]

Definition at line 74 of file Serialize.h.

References EmitPtr().

template<typename T1, typename T2, typename T3>
void llvm::Serializer::BatchEmitOwnedPtrs ( T1 *  p1,
T2 *  p2,
T3 *  p3 
) [inline]

Definition at line 82 of file Serialize.h.

References EmitPtr().

template<typename T1, typename T2, typename T3, typename T4>
void llvm::Serializer::BatchEmitOwnedPtrs ( T1 *  p1,
T2 *  p2,
T3 *  p3,
T4 &  p4 
) [inline]

Definition at line 92 of file Serialize.h.

References EmitPtr().

template<typename T>
void llvm::Serializer::BatchEmitOwnedPtrs ( unsigned  NumPtrs,
T *const *  Ptrs 
) [inline]

Definition at line 104 of file Serialize.h.

References EmitPtr().

template<typename T1, typename T2>
void llvm::Serializer::BatchEmitOwnedPtrs ( unsigned  NumT1Ptrs,
T1 *const *  Ptrs,
T2 *  p2 
) [inline]

Definition at line 113 of file Serialize.h.

References EmitPtr().

template<typename T1, typename T2, typename T3>
void llvm::Serializer::BatchEmitOwnedPtrs ( unsigned  NumT1Ptrs,
T1 *const *  Ptrs,
T2 *  p2,
T3 *  p3 
) [inline]

Definition at line 127 of file Serialize.h.

References EmitPtr().

template<typename T>
Emitter0<T> llvm::Serializer::MakeEmitter (  )  [inline]

Definition at line 180 of file Serialize.h.

template<typename T, typename Arg1>
Emitter1<T,Arg1> llvm::Serializer::MakeEmitter ( Arg1  a1  )  [inline]

Definition at line 185 of file Serialize.h.

template<typename T, typename Arg1, typename Arg2>
Emitter2<T,Arg1,Arg2> llvm::Serializer::MakeEmitter ( Arg1  a1,
Arg2  a2 
) [inline]

Definition at line 190 of file Serialize.h.

bool Serializer::isRegistered ( const void *  p  )  const

void llvm::Serializer::FlushRecord (  )  [inline]

Definition at line 200 of file Serialize.h.

Referenced by EnterBlock(), and ExitBlock().

void Serializer::EnterBlock ( unsigned  BlockID = 8,
unsigned  CodeLen = 3 
)

Definition at line 42 of file Serialize.cpp.

References llvm::BitstreamWriter::EnterSubblock(), and FlushRecord().

void Serializer::ExitBlock (  ) 

Definition at line 48 of file Serialize.cpp.

References llvm::BitstreamWriter::ExitBlock(), and FlushRecord().


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



This web site is hosted by the Computer Science Department at the University of Illinois at Urbana-Champaign.