読者です 読者をやめる 読者になる 読者になる

mime parser

を、もくもくと書いていた。(まだ不完全だしいじる所は多いけども
Spirit.Qiを使ってみたかったんだけど、cpp-netlibにmimeパーサっぽいのがあったのですがこれで
こいつがパースできなかった(コロンで2つに分けたいだけ)

Return-Path: "俺"<ore@hogehoge.com>

んでいじってたんですよ

 mime_headerList = (mime_header % qi::eol) > crlf;
 mime_header		= token > ':' > value;
 token			= qi::char_("a-zA-Z") > *qi::char_("a-zA-Z_0-9\\-");
 value			= valuePart[ _val = _1 ] >> *(valueCont [ _val += "\r\n" + _1 ]);
 valueCont		= qi::lit ( "\r\n\t" ) >> valuePart;
 valuePart		= +qi::print;
			
 contWS			= +qi::char_( " \t");

コロンで左右に分けるためにはqi::printを使えばいいの?とか思って書いてたのだが途中でSEGV

コンパイルの遅さもあって今保留中。(qi::printって対象文字列が多いからなのかコンパイル時間がqi::char_とかの倍くらいかかる気が

これ闇の魔法陣だと大丈夫なのかなと思って見たらqi::_valが使われていた
Qi力が足りない・・・

広告を非表示にする