Some RGBLINK refactoring

- Consistently refer to `Section` fragments/unions as "pieces" (renaming `.nextu`)
- Remove `Symbol`'s `.label()` accessors (use `std::get<Label>`)
- Move some `Label`-related logic into `Symbol` methods
This commit is contained in:
Rangi42
2025-09-05 16:34:51 -04:00
parent e569e0c200
commit 1fc9ba86c4
10 changed files with 82 additions and 91 deletions

View File

@@ -48,7 +48,7 @@ struct Section {
// Extra info computed during linking
std::vector<Symbol> *fileSymbols;
std::vector<Symbol *> symbols;
std::unique_ptr<Section> nextu; // The next "component" of this unionized sect
std::unique_ptr<Section> nextPiece; // The next fragment or union "piece" of this section
};
// Execute a callback for each section currently registered.

View File

@@ -33,8 +33,8 @@ struct Symbol {
>
data;
Label &label() { return std::get<Label>(data); }
Label const &label() const { return std::get<Label>(data); }
void linkToSection(Section &section);
void fixSectionOffset();
};
void sym_ForEach(void (*callback)(Symbol &));