LLVM API Documentation

Classes | Public Member Functions
llvm::BitstreamReader Class Reference

#include <BitstreamReader.h>

List of all members.

Classes

struct  BlockInfo

Public Member Functions

 BitstreamReader ()
 BitstreamReader (const unsigned char *Start, const unsigned char *End)
 BitstreamReader (StreamableMemoryObject *bytes)
void init (const unsigned char *Start, const unsigned char *End)
StreamableMemoryObjectgetBitcodeBytes ()
 ~BitstreamReader ()
void CollectBlockInfoNames ()
bool isIgnoringBlockInfoNames ()
bool hasBlockInfoRecords () const
const BlockInfogetBlockInfo (unsigned BlockID) const
BlockInfogetOrCreateBlockInfo (unsigned BlockID)

Detailed Description

BitstreamReader - This class is used to read from an LLVM bitcode stream, maintaining information that is global to decoding the entire file. While a file is being read, multiple cursors can be independently advanced or skipped around within the file. These are represented by the BitstreamCursor class.

Definition at line 35 of file BitstreamReader.h.


Constructor & Destructor Documentation

llvm::BitstreamReader::BitstreamReader ( ) [inline]

Definition at line 59 of file BitstreamReader.h.

llvm::BitstreamReader::BitstreamReader ( const unsigned char *  Start,
const unsigned char *  End 
) [inline]

Definition at line 62 of file BitstreamReader.h.

References init().

llvm::BitstreamReader::BitstreamReader ( StreamableMemoryObject bytes) [inline]

Definition at line 67 of file BitstreamReader.h.

References llvm::OwningPtr< T >::reset().

llvm::BitstreamReader::~BitstreamReader ( ) [inline]

Definition at line 78 of file BitstreamReader.h.

References llvm::BitstreamReader::BlockInfo::Abbrevs.


Member Function Documentation

void llvm::BitstreamReader::CollectBlockInfoNames ( ) [inline]

CollectBlockInfoNames - This is called by clients that want block/record name information.

Definition at line 92 of file BitstreamReader.h.

StreamableMemoryObject& llvm::BitstreamReader::getBitcodeBytes ( ) [inline]
const BlockInfo* llvm::BitstreamReader::getBlockInfo ( unsigned  BlockID) const [inline]

getBlockInfo - If there is block info for the specified ID, return it, otherwise return null.

Definition at line 106 of file BitstreamReader.h.

Referenced by llvm::BitstreamCursor::EnterSubBlock(), and getOrCreateBlockInfo().

BlockInfo& llvm::BitstreamReader::getOrCreateBlockInfo ( unsigned  BlockID) [inline]

Definition at line 118 of file BitstreamReader.h.

References BlockInfo, and getBlockInfo().

Referenced by llvm::BitstreamCursor::ReadBlockInfoBlock().

bool llvm::BitstreamReader::hasBlockInfoRecords ( ) const [inline]

hasBlockInfoRecords - Return true if we've already read and processed the block info block for this Bitstream. We only process it for the first cursor that walks over it.

Definition at line 102 of file BitstreamReader.h.

Referenced by llvm::BitstreamCursor::ReadBlockInfoBlock().

void llvm::BitstreamReader::init ( const unsigned char *  Start,
const unsigned char *  End 
) [inline]

Definition at line 71 of file BitstreamReader.h.

References llvm::getNonStreamedMemoryObject(), and llvm::OwningPtr< T >::reset().

Referenced by BitstreamReader().

bool llvm::BitstreamReader::isIgnoringBlockInfoNames ( ) [inline]

Definition at line 93 of file BitstreamReader.h.

Referenced by llvm::BitstreamCursor::ReadBlockInfoBlock().


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