У меня есть эти данные в моем файле:
#TITLE:Destiny;
#SUBTITLE:;
#ARTIST:Smiley;
#BACKGROUND:bg.png;
#SAMPLESTART:43.960;
#SAMPLELENGTH:12.000;
Я хочу проанализировать их, используя AST, в структуру, подобную этой:
struct data {
std::string title, subtitle, artist, background;
double samplestart, samplelength;
};
Примечание: записи в файле могутпоявляются в любом порядке.
Я думал о чем-то вроде этого:
struct prs : qi::symbols< char, qi::parser<...> > {
prs() {
add
("TITLE", link_to_some_str_parser)
("SAMPLESTART", link_to_some_dbl_parser);
}
};
И затем использовал его, чтобы добраться до правильного анализатора во время выполнения, возможно, используя синтаксис [] для хранения проанализированногорезультат в некоторую переменную.
Теперь главный вопрос.Будет ли это даже скомпилировать?Можно ли использовать таким образом символы qi :: и имеет ли это какой-то смысл?Как бы вы поступили иначе?
Спасибо!Alex