namespace Msp {
namespace DataFile {
-void Loader::load(const Statement &st)
+Loader::~Loader()
{
- for(list<Statement>::const_iterator i = st.sub.begin(); i!=st.sub.end(); ++i)
- load_statement(*i);
- finish();
+ for(ActionMap::iterator i = actions.begin(); i!=actions.end(); ++i)
+ delete i->second;
}
void Loader::load(Parser &p)
finish();
}
-Loader::~Loader()
-{
- for(ActionMap::iterator i = actions.begin(); i!=actions.end(); ++i)
- delete i->second;
-}
-
-void Loader::load_sub_with(Loader &ldr)
-{
- if(!cur_st)
- throw InvalidState("load_sub called without current statement");
-
- ldr.load(*cur_st);
-}
-
-void Loader::add(const string &k, LoaderAction *a)
+void Loader::load(const Statement &st)
{
- ActionMap::iterator i = actions.find(k);
- if(i!=actions.end())
- {
- delete i->second;
- i->second = a;
- }
- else
- actions[k] = a;
+ for(list<Statement>::const_iterator i = st.sub.begin(); i!=st.sub.end(); ++i)
+ load_statement(*i);
+ finish();
}
void Loader::load_statement(const Statement &st)
cur_st = 0;
}
+void Loader::load_sub_with(Loader &ldr)
+{
+ if(!cur_st)
+ throw InvalidState("load_sub called without current statement");
+
+ ldr.load(*cur_st);
+}
+
+void Loader::add(const string &k, LoaderAction *a)
+{
+ ActionMap::iterator i = actions.find(k);
+ if(i!=actions.end())
+ {
+ delete i->second;
+ i->second = a;
+ }
+ else
+ actions[k] = a;
+}
+
} // namespace DataFile
} // namespace Msp