I played around with this and came up with an implementation that returns an iterator and avoids allocation. It seemed appropriate to change the genre getter for the Accessor impl to use the new method so that numeric IDs will be translated and multiple values joined with '/' as per get_text. That's done as a separate commit in case it's a problem.
One question is whether get_texts and get_text should behave the same as genres and genre for TCON frames? I think this could be done fairly cleanly by reworking GenresIter into a more generic MultiValueIter and using it in get_texts. I can add another commit to this PR to address that if necessary.
I played around with this and came up with an implementation that returns an iterator and avoids allocation. It seemed appropriate to change the genre getter for the
Accessor
impl to use the new method so that numeric IDs will be translated and multiple values joined with '/' as perget_text
. That's done as a separate commit in case it's a problem.One question is whether
get_texts
andget_text
should behave the same asgenres
andgenre
for TCON frames? I think this could be done fairly cleanly by reworkingGenresIter
into a more genericMultiValueIter
and using it inget_texts
. I can add another commit to this PR to address that if necessary.closes #281