MCPcopy Create free account
hub / github.com/TASEmulators/fceux / addSymbol

Method addSymbol

src/debugsymboltable.cpp:129–154  ·  view source on GitHub ↗

--------------------------------------------------------------

Source from the content-addressed store, hash-verified

127}
128//--------------------------------------------------------------
129int debugSymbolPage_t::addSymbol( debugSymbol_t*sym )
130{
131 // Check if symbol already is loaded by that name or offset
132 if ( symMap.count( sym->offset() ) )
133 {
134 snprintf( dbgSymTblErrMsg, sizeof(dbgSymTblErrMsg), "Error: symbol offset 0x%04X already has an entry on %s page\n", sym->offset(), _pageName );
135 return -1;
136 }
137 if ( !dbgSymAllowDuplicateNames && (sym->name().size() > 0) && symNameMap.count( sym->name() ) )
138 {
139 snprintf( dbgSymTblErrMsg, sizeof(dbgSymTblErrMsg), "Error: symbol name '%s' already exists on %s page\n", sym->name().c_str(), _pageName );
140 return -1;
141 }
142
143 symMap[ sym->offset() ] = sym;
144
145 sym->page = this;
146
147 // Comment only lines don't need to have a name.
148 if (sym->name().size() > 0)
149 {
150 symNameMap[ sym->name() ] = sym;
151 }
152
153 return 0;
154}
155//--------------------------------------------------------------
156debugSymbol_t *debugSymbolPage_t::getSymbolAtOffset( int ofs )
157{

Callers 4

loadFileNLMethod · 0.80
loadRegisterMapMethod · 0.80
addSymbolAtBankOffsetMethod · 0.80
ld65_SymbolLoadMethod · 0.80

Calls 3

offsetMethod · 0.80
sizeMethod · 0.45
nameMethod · 0.45

Tested by

no test coverage detected