Go to the documentation of this file.
46 using ReferenceManager::SafePointer;
47 using ReferenceManager::SectionOffsetKey;
48 using ReferenceManager::SectionIndexKey;
49 using ReferenceManager::SectionKey;
98 assert(lineNumSection != NULL);
109 while (elementStart +
header().elementSize <=
112 Word elementOffset = stream.
readWord();
121 if (elementOffset != 0) {
123 CREATE_SAFEPOINTER(indexKey));
128 }
else if (procedure != NULL) {
140 bool sectionShouldNotHaveLineNumbersBeforeProcedure =
false;
141 assert(sectionShouldNotHaveLineNumbersBeforeProcedure);
170 CREATE_SAFEPOINTER(sKey));
virtual void readInfo(BinaryStream &stream, Section *sect) const
TPEFLineNumSectionReader()
HalfWord SectionId
Type for storing binary file section ids.
void setProcedureSymbol(const ReferenceManager::SafePointer *aRef)
void setReadPosition(unsigned int position)
static const SafePointer null
The default SafePointer that is used in null references.
static SectionId codeSectionId_
Identification code of text section which is referenced from currently read section.
virtual Section::SectionType type() const
void addLine(const LineNumElement *elem)
virtual void readData(BinaryStream &stream, Section *section) const
#define assert(condition)
virtual void addElement(SectionElement *element)
void setLineNumber(HalfWord lineNum)
static TPEFLineNumSectionReader proto_
Prototype instance of TPEFLineNumSectionReader to be registered to SectionReader.
static void registerSectionReader(const SectionReader *sReader)
virtual ~TPEFLineNumSectionReader()
Word SectionOffset
Type for storing offsets relative to a given base offset value.
@ ST_LINENO
Line number section.
virtual void readData(BinaryStream &stream, Section *section) const
void setInstruction(ReferenceManager::SafePointer *aRef)
static const Header & header()