OpenASIP
2.0
|
#include <SectionOffsetReplacer.hh>
Public Member Functions | |
SectionOffsetReplacer (const SafePointable *obj) | |
virtual | ~SectionOffsetReplacer () |
Public Member Functions inherited from TPEF::ValueReplacer | |
void | resolve () |
Protected Member Functions | |
virtual bool | tryToReplace () |
virtual ValueReplacer * | clone () |
Protected Member Functions inherited from TPEF::ValueReplacer | |
ValueReplacer (const SafePointable *obj) | |
ValueReplacer (const ValueReplacer &replacer) | |
virtual | ~ValueReplacer () |
const SafePointable * | reference () const |
unsigned int | streamPosition () const |
Private Member Functions | |
SectionOffsetReplacer (const SectionOffsetReplacer &replacer) | |
SectionOffsetReplacer | operator= (const SectionOffsetReplacer &) |
Additional Inherited Members | |
Static Public Member Functions inherited from TPEF::ValueReplacer | |
static void | finalize () |
static void | initialize (BinaryStream &stream) |
Static Protected Member Functions inherited from TPEF::ValueReplacer | |
static BinaryStream & | stream () |
Replaces object reference with section offset. Section offset key must be stored in reference manager for that object whose section offset is written.
Definition at line 47 of file SectionOffsetReplacer.hh.
TPEF::SectionOffsetReplacer::SectionOffsetReplacer | ( | const SafePointable * | obj | ) |
|
virtual |
|
private |
|
protectedvirtual |
Creates dynamically allocated copy of replacer.
Implements TPEF::ValueReplacer.
Definition at line 90 of file SectionOffsetReplacer.cc.
References SectionOffsetReplacer().
|
private |
|
protectedvirtual |
Tries to do replacement in to the stream.
Implements TPEF::ValueReplacer.
Definition at line 69 of file SectionOffsetReplacer.cc.
References TPEF::ReferenceManager::SectionOffsetKey::offset(), TPEF::ValueReplacer::reference(), TPEF::ReferenceManager::SafePointer::sectionOffsetKeyFor(), TPEF::BinaryStream::setWritePosition(), TPEF::ValueReplacer::stream(), TPEF::ValueReplacer::streamPosition(), and TPEF::BinaryStream::writeWord().