Gemeinsame Teile der Spirit-Regeln herausrechnen
Ich habe viele Regeln, die ein gemeinsames Präfix und Suffix haben:
rule = begin_stuff >> some >> other >> stuff >> end_stuff.
(woherbegin_stuff
undend_stuff
bestehen aus Literalen)
Ich wollte sagen können
rule = wrapped(some >> other >> stuff);
Ich habe etwas in der Art von versucht
template<typename Rule> Rule wrapped(Rule inside)
{
Rule result;
result = begin_stuff >> inside >> end_stuff;
return result;
}
Aber alles, was ich bekomme, sind viele Aussagen von Qi zur Kompilierungszeit.
Wie kann ich die Spirit-Regeln auf diese Weise umgestalten?