NAME

Rose::DB::Object::Metadata::Column::Interval - Interval column metadata.

SYNOPSIS

use Rose::DB::Object::Metadata::Column::Interval;

$col = Rose::DB::Object::Metadata::Column::Interval->new(...);
$col->make_methods(...);
...

DESCRIPTION

Objects of this class store and manipulate metadata for interval columns in a database. Column metadata objects store information about columns (data type, size, etc.) and are responsible for creating object methods that manipulate column values.

This class inherits from Rose::DB::Object::Metadata::Column. Inherited methods that are not overridden will not be documented a second time here. See the Rose::DB::Object::Metadata::Column documentation for more information.

METHOD MAP

get_set

Rose::DB::Object::MakeMethods::Generic, date, ...

get

Rose::DB::Object::MakeMethods::Time, date, ...

get_set

Rose::DB::Object::MakeMethods::Time, date, ...

See the Rose::DB::Object::Metadata::Column documentation for an explanation of this method map.

OBJECT METHODS

end_of_month_mode MODE

This mode determines how math is done on duration objects. If defined, the end_of_month setting for each DateTime::Duration object created by this column will have its mode set to MODE. Otherwise, the end_of_month parameter will not be passed to the DateTime::Duration constructor.

Valid modes are wrap, limit, and preserve. See the documentation for DateTime::Duration for a full explanation.

parse_value DB, VALUE

Convert VALUE to the equivalent DateTime::Duration object. VALUE maybe returned unmodified if it is a valid interval keyword or otherwise has special meaning to the underlying database. DB is a Rose::DB object that is used as part of the parsing process. Both arguments are required.

scale [INT]

Get or set the integer number of places past the decimal point preserved for fractional seconds. Defaults to 0.

Returns "interval".

type

Returns "interval".

AUTHOR

John C. Siracusa (siracusa@gmail.com)

LICENSE

Copyright (c) 2010 by John C. Siracusa. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.