void add(const std::string &k, T L::*p)
{ actions.insert(typename ActionMap::value_type(k, new LoadValue<L, T>(p))); }
+ void add(const std::string &k)
+ { actions.insert(ActionMap::value_type(k, 0)); }
+
template<typename S>
void load_sub(S &s)
{ load_sub<S, typename S::Loader>(s); }
ActionMap::iterator j=actions.find(st.keyword);
if(j==actions.end())
throw Exception(st.get_location()+": Unknown keyword '"+st.keyword+"'");
- j->second->execute(*this, st);
+ if(j->second)
+ j->second->execute(*this, st);
cur_st=0;
}
};