swh:1:snp:a4c99a50dc49f82b591f268001b320f8c3ca0041
Raw File
Tip revision: dc000f2a5f006d137f66716b086025d618bf8306 authored by John M Chambers on 14 July 2008, 00:00:00 UTC
version 1.0-5
Tip revision: dc000f2
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;
back to top