23 #ifndef STDEXT_DYNAMICSTORAGE_H
24 #define STDEXT_DYNAMICSTORAGE_H
28 #include <unordered_map>
32 template<
typename Key>
35 template<
typename T>
void set(
const Key& k,
const T& value) {
36 if(m_data.size() <= k)
48 template<
typename T> T
get(
const Key& k)
const {
return has(k) ? any_cast<T>(m_data[k]) : T(); }
49 bool has(
const Key& k)
const {
return k < m_data.size() && !m_data[k].empty(); }
52 std::size_t count = 0;
53 for(std::size_t i=0;i<m_data.size();++i)
54 if(!m_data[i].empty())
59 void clear() { m_data.clear(); }
62 std::vector<any> m_data;