+ /** Loads a sub-object from the statement being processed with an extra
+ parameter for the Loader. The Loader class of the sub-object is
+ automatically used. */
+ template<typename S, typename T>
+ void load_sub(S &s, T &p)
+ {
+ typename S::Loader ldr(s, p);
+ load_sub_with(ldr);
+ }
+
+ /** Processes the current statement's substatements with another Loader. */
+ void load_sub_with(Loader &);
+
+ /** Adds a keyword that is loaded by calling a function. */