#!/usr/bin/perl
# Example - Params::Validate - Positional
use strict;
use warnings;
use Params::Validate qw( validate_pos SCALAR );
my ( $state_re, $zip_re, $non_blank_re ) = do 'common.pl';

my @check_zip_API = (
    { type => SCALAR, regex => $non_blank_re },
    { type => SCALAR, regex => $non_blank_re },
    { type => SCALAR, regex => $non_blank_re },
    { type => SCALAR, regex => $state_re  },
    { type => SCALAR, regex => $zip_re, optional => 1 },
);

sub check_zip {
#    my ( $name, $address, $city, $state, $zip ) = validate_pos( @_, 1, 1, 1, 1, 0 );
    my ( $name, $address, $city, $state, $zip ) = validate_pos( @_, @check_zip_API );
}
sub do_it {
    check_zip( 'Me', '1313 M Lane', 'Auburn', 'AL', 36831 );
}
do_it();
