announce-list is very annoyingly a list of lists. I don't have any useful primitive to manage that case in TorrentRead, so for now I've done a not-so-elegant implementation where I step around the visitor, use my knowledge of the variant and access the outer list directly through boost::get(). I'm not necessarily convinced that this is bad since on the other hand the solution consistent with the rest of the implementation would involve searching for "/[[x]]/[[y]]" which has its own overhead. I mean, variant contains a vector, I can access it normally. Visitor is a convenience thing, I don't see why parser's client code should be obliged to pretend the variant cannot be accessed directly. |
||
---|---|---|
.. | ||
visitors | ||
main.cpp | ||
meson.build | ||
parser.cpp | ||
parser.hpp | ||
split.cpp | ||
split.hpp | ||
torrent_read.cpp | ||
torrent_read.hpp |