NAME
Devel::Ladybug::DateTime - Overloaded Time object class
SYNOPSIS
use Devel::Ladybug::DateTime;
From Epoch:
my $time = Devel::Ladybug::DateTime->new( time() );
From YYYY MM DD hh mm ss:
my $time = Devel::Ladybug::DateTime->newFrom(1999,12,31,23,59,59);
DESCRIPTION
Time object.
Extends Devel::Ladybug::Object, Time::Piece. Overloaded for numeric comparisons, stringifies as unix epoch seconds unless overridden.
PUBLIC CLASS METHODS
assert(Devel::Ladybug::Class $class: *@rules)
Returns a new Devel::Ladybug::Type::DateTime instance which encapsulates the received Devel::Ladybug::Subtype rules.
With exception to
ctime
andmtime
, which default to DATETIME, DOUBLE(15,4) is the default column type for Devel::Ladybug::DateTime. This is done in order to preserve sub-second time resolution. This may be overridden as needed on a per-attribute bases.To use DATETIME as the column type, specify it as the value to the
columnType
subtype arg. When using a DATETIME column, Devel::Ladybug will automatically ask the database to handle any necessary conversion.create "YourApp::Example::" => { someTimestamp => Devel::Ladybug::DateTime->assert( subtype( columnType => "DATETIME", ) ), # ... };
new(Devel::Ladybug::Class $class: Num $epoch)
Returns a new Devel::Ladybug::DateTime instance which encapsulates the received value.
my $object = Devel::Ladybug::DateTime->new($epoch);
SEE ALSO
See the Time::Piece module for time formatting and manipulation methods inherited by this class.
This file is part of Devel::Ladybug.