... I'm a little less sure about the first unpack to split the $data scalar into the list of items.
Can you say more about why you are unsure about this statement? Is it because of the interpolated $entry_size component in the unpack template? If so, be assured that this is a perfectly kosher maneuver: a template specification string is just a string no matter how compounded. (Sometimes a string is just a string...)
Update 1: Changed a word, added a link.
Update 2: Hey, this is very late, but I just noticed that the unpack documentation includes an example of this exact technique in a limited implementation of substr:
sub substr { my($what,$where,$howmuch) = @_; unpack("x$where a$howmuch", $what); }
Give a man a fish: <%-{-{-{-<
In reply to Re: Perlish approach to parsing a binary blob
by AnomalousMonk
in thread Perlish approach to parsing a binary blob
by mxb
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |