class DBI::Date

Represents a Date.

DEPRECATED: Please use a regular Date or DateTime object.

Attributes

day[RW]
mday[RW]
mday=[RW]
mon[RW]
mon=[RW]
month[RW]
year[RW]

Public Class Methods

new(year=0, month=0, day=0) click to toggle source

::new(year = 0, month = 0, day = 0) ::new ::new

Creates and returns a new DBI::Date object. It's similar to the standard Date class' constructor except that it also accepts a Date or Time object.

# File lib/dbi/utils/date.rb, line 42
def initialize(year=0, month=0, day=0)
    case year
    when ::Date
        @year, @month, @day = year.year, year.month, year.day 
        @original_date = year
    when ::Time
        @year, @month, @day = year.year, year.month, year.day 
        @original_time = year
    else
        @year, @month, @day = year, month, day
    end
end

Public Instance Methods

to_date() click to toggle source

Returns a new Date object based on the year, month and day or, if a Date object was passed to the constructor, returns that object.

# File lib/dbi/utils/date.rb, line 24
def to_date
    @original_date || ::Date.new(@year, @month, @day)
end
to_s() click to toggle source

Returns a DBI::Date object as a string in YYYY-MM-DD format.

# File lib/dbi/utils/date.rb, line 29
def to_s
    sprintf("%04d-%02d-%02d", @year, @month, @day)
end
to_time() click to toggle source

Returns a new Time object based on the year, month and day or, if a Time object was passed to the constructor, returns that object.

# File lib/dbi/utils/date.rb, line 18
def to_time
    @original_time || ::Time.local(@year, @month, @day, 0, 0, 0)
end