I am dealing with a data format that has a Pascal string representation
like element to it. i.e. an integer followed a number of elements indicated by the leading integer. I'd like to encapsulate this within a Parse::RecDescent
grammar using some of the magic from dynamically matched rules together with subrule repetition, but can't get it to work. Any recommendations? Code is below.
use Test::More tests => 5;
rec: int elem("$item")
ok($p->rec('2 foo bar'));
ok(!$p->rec('1 foo bar'));
For now I am using the equivalent of:
rec: int elem(s?)
but that doesn't provide the check I want (i.e. the 4th and 5th tests fail) and is slower than I think it would be if I could specify the exact number of items to match.