- typedef RefPtr<typename RemoveConst<T>::Type> RPNCT;
-
- ItemMap::iterator i = items.find(name);
- if(i!=items.end())
- {
- if(i->second.check_type<RPNCT>())
- {
- // Replace a future object placeholder
- RPNCT &ptr = i->second.value<RPNCT>();
- if(!ptr)
- {
- ptr = item;
- return;
- }
- }
-
- throw key_error(typeid(ItemMap));
- }
-
- items.insert(ItemMap::value_type(name, RPNCT(item)));