DataIntervalMap Class Reference

#include <include/type.h>

List of all members.


Detailed Description

Definition at line 684 of file type.h.

Public Types

typedef std::map< ADDRESS,
DataInterval >::iterator 
iterator

Public Member Functions

void addItem (ADDRESS addr, char *name, Type *ty, bool forced=false)
 DataIntervalMap ()
void deleteItem (ADDRESS addr)
void dump ()
void expandItem (ADDRESS addr, unsigned size)
DataIntervalEntryfind (ADDRESS addr)
iterator find_it (ADDRESS addr)
bool isClear (ADDRESS addr, unsigned size)
char * prints ()
void setProc (UserProc *p)

Private Member Functions

void checkMatching (DataIntervalEntry *pdie, ADDRESS addr, char *name, Type *ty, bool forced)
void enterComponent (DataIntervalEntry *pdie, ADDRESS addr, char *name, Type *ty, bool forced)
void replaceComponents (ADDRESS addr, char *name, Type *ty, bool forced)

Private Attributes

std::map< ADDRESS, DataIntervaldimap
UserProcproc


Member Typedef Documentation

typedef std::map<ADDRESS, DataInterval>::iterator DataIntervalMap::iterator
 

Definition at line 689 of file type.h.


Constructor & Destructor Documentation

DataIntervalMap::DataIntervalMap  )  [inline]
 

Definition at line 688 of file type.h.


Member Function Documentation

void DataIntervalMap::addItem ADDRESS  addr,
char *  name,
Type ty,
bool  forced = false
 

Definition at line 1265 of file type.cpp.

References enterComponent(), find(), Type::getCtype(), Type::getSize(), LOG, NULL, and replaceComponents().

Referenced by TypeTest::testDataInterval(), and TypeTest::testDataIntervalOverlaps().

void DataIntervalMap::checkMatching DataIntervalEntry pdie,
ADDRESS  addr,
char *  name,
Type ty,
bool  forced
[private]
 

Definition at line 1432 of file type.cpp.

void DataIntervalMap::deleteItem ADDRESS  addr  ) 
 

Definition at line 1443 of file type.cpp.

References dimap.

Referenced by TypeTest::testDataIntervalOverlaps().

void DataIntervalMap::dump  ) 
 

Definition at line 1450 of file type.cpp.

References prints().

void DataIntervalMap::enterComponent DataIntervalEntry pdie,
ADDRESS  addr,
char *  name,
Type ty,
bool  forced
[private]
 

Definition at line 1307 of file type.cpp.

References Type::asCompound(), Type::isCompatibleWith(), Type::meetWith(), and CompoundType::setTypeAtOffset().

Referenced by addItem().

void DataIntervalMap::expandItem ADDRESS  addr,
unsigned  size
 

DataIntervalEntry * DataIntervalMap::find ADDRESS  addr  ) 
 

Definition at line 1235 of file type.cpp.

References dimap, find_it(), and NULL.

Referenced by addItem(), Type::compForAddress(), TypeTest::testDataInterval(), and TypeTest::testDataIntervalOverlaps().

DataIntervalMap::iterator DataIntervalMap::find_it ADDRESS  addr  ) 
 

Definition at line 1224 of file type.cpp.

References dimap.

Referenced by find().

bool DataIntervalMap::isClear ADDRESS  addr,
unsigned  size
 

Definition at line 1242 of file type.cpp.

References dimap, end(), and LOG.

char * DataIntervalMap::prints  ) 
 

Definition at line 1454 of file type.cpp.

References debug_buffer, DEBUG_BUFSIZE, and dimap.

Referenced by dump(), and TypeTest::testDataInterval().

void DataIntervalMap::replaceComponents ADDRESS  addr,
char *  name,
Type ty,
bool  forced
[private]
 

Definition at line 1334 of file type.cpp.

References Type::asCompound(), dimap, Type::getSize(), CompoundType::getTypeAtOffset(), Type::meetWith(), Type::resolvesToCompound(), and CompoundType::setTypeAtOffset().

Referenced by addItem().

void DataIntervalMap::setProc UserProc p  )  [inline]
 

Definition at line 690 of file type.h.

References proc.

Referenced by UserProc::UserProc().


Member Data Documentation

std::map<ADDRESS, DataInterval> DataIntervalMap::dimap [private]
 

Definition at line 685 of file type.h.

Referenced by deleteItem(), find(), find_it(), isClear(), prints(), and replaceComponents().

UserProc* DataIntervalMap::proc [private]
 

Definition at line 686 of file type.h.

Referenced by setProc().


The documentation for this class was generated from the following files:
Generated on Tue Sep 19 21:18:41 2006 for Boomerang by  doxygen 1.4.6