OpenASIP  2.0
Public Member Functions | Protected Member Functions | Static Private Attributes | List of all members
TPEF::SymbolSection Class Reference

#include <SymbolSection.hh>

Inheritance diagram for TPEF::SymbolSection:
Inheritance graph
Collaboration diagram for TPEF::SymbolSection:
Collaboration graph

Public Member Functions

virtual ~SymbolSection ()
 
virtual SectionType type () const
 
- Public Member Functions inherited from TPEF::Section
virtual ~Section ()
 
virtual bool isChunkable () const
 
virtual Chunkchunk (SectionOffset offset) const
 
bool isProgramSection () const
 
bool isAuxSection () const
 
virtual void addElement (SectionElement *element)
 
virtual void setElement (Word index, SectionElement *element)
 
SectionElementelement (Word index) const
 
Word elementCount () const
 
void setFlagNoBits ()
 
void unsetFlagNoBits ()
 
bool noBits () const
 
bool vLen () const
 
Byte flags () const
 
void setFlags (Byte flagByte)
 
void setStartingAddress (AddressImage address)
 
AddressImage startingAddress () const
 
void setLink (const ReferenceManager::SafePointer *aLink)
 
void setLink (Section *aLink)
 
Sectionlink () const
 
void setASpace (const ReferenceManager::SafePointer *addrSpace)
 
void setASpace (ASpaceElement *addrSpace)
 
ASpaceElementaSpace () const
 
void setName (const ReferenceManager::SafePointer *sectionName)
 
void setName (Chunk *sectionName)
 
Chunkname () const
 
virtual bool isDataSection () const
 
virtual bool isCodeSection () const
 
- Public Member Functions inherited from TPEF::SafePointable
virtual ~SafePointable ()
 

Protected Member Functions

 SymbolSection (bool init)
 
virtual Sectionclone () const
 
- Protected Member Functions inherited from TPEF::Section
 Section ()
 
void setFlagVLen ()
 
void unsetFlagVLen ()
 
- Protected Member Functions inherited from TPEF::SafePointable
 SafePointable ()
 

Static Private Attributes

static SymbolSection proto_
 Prototype instance of section. More...
 

Additional Inherited Members

- Public Types inherited from TPEF::Section
enum  SectionType {
  ST_NULL = 0x00, ST_STRTAB = 0x01, ST_SYMTAB = 0x02, ST_DEBUG = 0x03,
  ST_RELOC = 0x04, ST_LINENO = 0x05, ST_NOTE = 0x06, ST_ADDRSP = 0x07,
  ST_MR = 0x0A, ST_CODE = 0x81, ST_DATA = 0x82, ST_UDATA = 0x83,
  ST_LEDATA = 0x84, ST_DUMMY = 0xff
}
 
enum  SectionFlag { SF_VLEN = 0x40, SF_NOBITS = 0x80 }
 
- Static Public Member Functions inherited from TPEF::Section
static SectioncreateSection (SectionType type)
 
static bool isProgramSection (SectionType type)
 
- Static Protected Member Functions inherited from TPEF::Section
static void registerSection (const Section *section)
 

Detailed Description

Symbol table section.

Definition at line 44 of file SymbolSection.hh.

Constructor & Destructor Documentation

◆ ~SymbolSection()

TPEF::SymbolSection::~SymbolSection ( )
virtual

Destructor.

Definition at line 57 of file SymbolSection.cc.

57  {
58 }

◆ SymbolSection()

TPEF::SymbolSection::SymbolSection ( bool  init)
protected

Constructor.

Parameters
initTrue if registeration is wanted.

Definition at line 45 of file SymbolSection.cc.

45  : Section() {
46  if (init) {
48  }
49 
50  unsetFlagVLen();
52 }

References TPEF::Section::registerSection(), TPEF::Section::unsetFlagNoBits(), and TPEF::Section::unsetFlagVLen().

Referenced by clone().

Here is the call graph for this function:

Member Function Documentation

◆ clone()

Section * TPEF::SymbolSection::clone ( ) const
protectedvirtual

Creates an instance of class.

Returns
Newly created section.

Implements TPEF::Section.

Definition at line 76 of file SymbolSection.cc.

76  {
77  return new SymbolSection(false);
78 }

References SymbolSection().

Here is the call graph for this function:

◆ type()

Section::SectionType TPEF::SymbolSection::type ( ) const
virtual

Returns section's type.

Returns
Type of section.

Implements TPEF::Section.

Definition at line 66 of file SymbolSection.cc.

66  {
67  return ST_SYMTAB;
68 }

References TPEF::Section::ST_SYMTAB.

Member Data Documentation

◆ proto_

SymbolSection TPEF::SymbolSection::proto_
staticprivate

Prototype instance of section.

Definition at line 56 of file SymbolSection.hh.


The documentation for this class was generated from the following files:
TPEF::Section::ST_SYMTAB
@ ST_SYMTAB
Symbol table.
Definition: Section.hh:72
TPEF::Section::unsetFlagVLen
void unsetFlagVLen()
TPEF::Section::Section
Section()
Definition: Section.cc:64
TPEF::SymbolSection::SymbolSection
SymbolSection(bool init)
Definition: SymbolSection.cc:45
TPEF::Section::unsetFlagNoBits
void unsetFlagNoBits()
TPEF::Section::registerSection
static void registerSection(const Section *section)
Definition: Section.cc:114