Loads a statement by calling a function that takes an array of values.
*/
template<typename L, typename A0>
-class LoaderFunc1<L, const std::list<A0> &>: public LoaderAction
+class LoaderFunc1<L, const std::vector<A0> &>: public LoaderAction
{
public:
- typedef void (L::*FuncType)(const std::list<A0> &);
+ typedef void (L::*FuncType)(const std::vector<A0> &);
LoaderFunc1(FuncType f): func(f) { }
void execute(Loader &l, const Statement &st) const
{
std::vector<A0> values;
values.reserve(st.args.size());
- for(ValueArray::iterator i=st.args.begin(); i!=st.args.end(); ++i)
+ for(ValueArray::const_iterator i=st.args.begin(); i!=st.args.end(); ++i)
values.push_back(i->get<A0>());
(dynamic_cast<L &>(l).*func)(values);
}