typedef std::map<StatementKey, LoaderAction *> ActionMap;
ActionMap actions;
+ Parser *cur_parser;
+ unsigned cur_level;
const Statement *cur_st;
bool sub_loaded;
+ bool direct;
std::list<Loader *> aux_loaders;
protected:
bool check_sub_loads;
/** Loads data from a statement. */
void load(const Statement &st);
+ /** Loads statemsnts from a parser, feeding them directly to actions. */
+ void load_direct(Parser &, unsigned);
+
/** Processes a single statement */
void load_statement(const Statement &st);
source may not necessarily be a file. */
const std::string &get_source() const;
+ /** Returns the keyword of the statement being processed. Can be used to
+ implement dynamic keywords. */
+ const std::string &get_keyword() const;
+
virtual void finish() { }
};