swh:1:snp:a4c99a50dc49f82b591f268001b320f8c3ca0041
Tip revision: ce60f670aac0a708d3a9af5f0cf46a752d46ba8a authored by John M Chambers on 28 October 2020, 07:59:48 UTC
version 1.0-6.1
version 1.0-6.1
Tip revision: ce60f67
findDateForm.perl
%dateActions = ( 735 => 1, 525 => 1, 334 => 1, # continue
124 => 2, 214 => 2, 421 => 2); # done
# anything else is an error
@savedLines = ();
sub findDateForm {
my $nextFun = $_[0];
my @dmy = (1+2+4, 1+2, 1+4),
$action, @line;
while(@line = &{$nextFun}()) {
push @savedLines [ @line ];
@dmy = testDateForm(\@line, \@dmy);
## check for termination or errors
if(@dmy != 3) {return ;}
else {
$action = $dateActions{join("",@dmy)};
if($action != 1) {last;}
}
}
$action == 2 ? @dmy : undef;
}
1;