aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorEugen Wissner <belka@caraus.de>2026-07-12 17:50:32 +0200
committerEugen Wissner <belka@caraus.de>2026-07-12 17:50:32 +0200
commit73495e0d0d483769ae2937868840854c15515eb2 (patch)
tree5808cefa476e6b4a0e682153401e2c434aedfa3e /include
parent768537d6e4b82a19e77b7e44234309ecaf4d65d2 (diff)
downloadelna-73495e0d0d483769ae2937868840854c15515eb2.tar.gz
Fix exporting non-public symbols
Diffstat (limited to 'include')
-rw-r--r--include/elna/boot/symbol.h13
1 files changed, 11 insertions, 2 deletions
diff --git a/include/elna/boot/symbol.h b/include/elna/boot/symbol.h
index d29587d..e13e842 100644
--- a/include/elna/boot/symbol.h
+++ b/include/elna/boot/symbol.h
@@ -205,12 +205,12 @@ namespace elna::boot
return this->entries.end();
}
- const_iterator cbegin() const
+ const_iterator begin() const
{
return this->entries.cbegin();
}
- const_iterator cend() const
+ const_iterator end() const
{
return this->entries.cend();
}
@@ -448,6 +448,15 @@ namespace elna::boot
* \param bag Symbol bag of another module.
*/
void add_import(const symbol_bag& bag);
+
+ private:
+ /**
+ * Returns a reduced symbol table with exported symbols, computed lazily
+ * and cached.
+ */
+ std::shared_ptr<symbol_table> exported_symbols() const;
+
+ mutable std::shared_ptr<symbol_table> m_exported;
};
/**