template <typename T, const auto& Names, auto... SetArgs>
class PerfectSymbolMap
Defined at line 180 of file ../../src/lib/elfldltl/include/lib/elfldltl/perfect-symbol-table.h
elfldltl::PerfectSymbolMap is a bit like a std::unordered_map
<SymbolName
, T>
that has all the Names pre-inserted with default-constructed values. Its
operator[] does a quick hash lookup, but there is no .find() method. It
doesn't have other container / range methods itself, but its Enumerate()
method returns a range that is similar to enumerating std::unordered_map.
Its iterators are different than st::unordered_map iterators, because they
yield a pair of references rather than a reference to a pair. So even for
mutable use, it must be bound with `auto [name, value]` and not `auto
&
`.
Public Methods
T operator[] (SymbolName & name)
Defined at line 184 of file ../../src/lib/elfldltl/include/lib/elfldltl/perfect-symbol-table.h
T operator[] (const SymbolName & name)
Defined at line 190 of file ../../src/lib/elfldltl/include/lib/elfldltl/perfect-symbol-table.h
auto Enumerate ()
Defined at line 195 of file ../../src/lib/elfldltl/include/lib/elfldltl/perfect-symbol-table.h
auto Enumerate ()
Defined at line 196 of file ../../src/lib/elfldltl/include/lib/elfldltl/perfect-symbol-table.h