NAME

Random::Day::InTheFuture - Class for random day generation in the future.

SYNOPSIS

use Random::Day::InTheFuture;

my $obj = Random::Day::InTheFuture->new(%params);
my $dt = $obj->get;
my $dt = $obj->random;
my $dt = $obj->random_day($day);
my $dt = $obj->random_day_month($day, $month);
my $dt = $obj->random_day_month_year($day, $month, $year);
my $dt = $obj->random_month($month);
my $dt = $obj->random_month_year($month, $year);
my $dt = $obj->random_year($year);

METHODS

new

my $obj = Random::Day::InTheFuture->new(%params);

Constructor.

  • day

    Day.

    Default value is undef.

  • dt_to

    DateTime object to.

    Default value is DateTime object for 2050 year.

  • month

    Month.

    Default value is undef.

  • year

    Year.

    Default value is undef.

get

my $dt = $obj->get;

Get random date defined by constructor parameters.

Returns DateTime object for date.

random

my $dt = $obj->random;

Get random date.

Returns DateTime object for date.

random_day

my $dt = $obj->random_day($day);

Get random date defined by day.

Returns DateTime object for date.

random_day_month

my $dt = $obj->random_day_month($day, $month);

Get random date defined by day and month.

Returns DateTime object for date.

random_day_month_year

my $dt = $obj->random_day_month_year($day, $month, $year);

Get date defined by day, month and year.

Returns DateTime object for date.

random_month

my $dt = $obj->random_month($month);

Get random date defined by month.

Returns DateTime object for date.

random_month_year

my $dt = $obj->random_month_year($month, $year);

Get random date defined by month and year.

Returns DateTime object for date.

random_year

my $dt = $obj->random_year($year);

Get random date defined by year.

Returns DateTime object for date.

ERRORS

new():
        From Class::Utils::set_params():
                Unknown parameter '%s'.

random_day():
        From Random::Day::random_day():
                Day cannot be a zero.
                Day isn't number.

random_day_month():
        From Random::Day::random_day_month():
                Cannot create DateTime object.
                Day cannot be a zero.
                Day isn't number.

random_day_month_year():
        From Random::Day::random_day_year():
                Cannot create DateTime object.
                        Error: %s
                Day cannot be a zero.
                Day isn't number.

random_month():
        From Random::Day::random_momth():
                Cannot create DateTime object.
                        Error: %s

random_month_year():
        From Random::Day::random_month_year():
                Begin of expected month is lesser than minimal date.
                        Expected year: %s
                        Expected month: %s
                        Minimal year: %s
                        Minimal month: %s
                Cannot create DateTime object.
                        Error: %s
                End of expected month is greater than maximal date.
                        Expected year: %s
                        Expected month: %s
                        Maximal year: %s
                        Maximal month: %s

random_year():
        From Random::Day::random_year():
                Year is greater than maximal year.
                        Expected year: %s
                        Maximal year: %s
                Year is lesser than minimal year.
                        Expected year: %s
                        Minimal year: %s

EXAMPLE

use strict;
use warnings;

use Random::Day::InTheFuture;

# Object.
my $obj = Random::Day::InTheFuture->new;

# Get date.
my $dt = $obj->get;

# Print out.
print $dt->ymd."\n";

# Output like:
# \d\d\d\d-\d\d-\d\d

DEPENDENCIES

Random::Day, DateTime.

SEE ALSO

Data::Random

Perl module to generate random data

Random::Day

Class for random day generation.

Random::Day::InThePast

Class for random day generation in the past.

REPOSITORY

https://github.com/michal-josef-spacek/Random-Day

AUTHOR

Michal Josef Špaček mailto:skim@cpan.org

http://skim.cz

LICENSE AND COPYRIGHT

© 2013-2024 Michal Josef Špaček

BSD 2-Clause License

VERSION

0.14