Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

problem opening the time class

0 views
Skip to first unread message

Cris Shupp

unread,
Dec 31, 2009, 4:52:47 PM12/31/09
to
All,

I am trying to open the Time class to add the following method.
I am always getting this error:
NameError: uninitialized constant Time::ZoneOffset

when referencing ZoneOffset. What am I doing wrong?


class Time
def self.offset_to_zone(offset)
offset = offset.to_i
ZoneOffset.each_pair do |time_zone, zone_offset| #ERROR OCCURS
HERE!!!
return time_zone if (zone_offset == offset)
end
raise ArgumentError, "Illegal arguments! The offset " <<
offset.to_s << " is unknown."
end
end
--
Posted via http://www.ruby-forum.com/.

pharrington

unread,
Jan 1, 2010, 2:33:46 PM1/1/10
to

As the error status, there is no Time::ZoneOffset constant....

Are you copying/pasting random code from somewhere?
If not, what is ZoneOffset even supposed to be?

Cris Shupp

unread,
Jan 4, 2010, 9:18:06 AM1/4/10
to
pharrington,

Thanks for the reply.

From time.rb (the standard library)

class Time
class << Time

ZoneOffset = {
'UTC' => 0,
# ISO 8601
'Z' => 0,
# RFC 822
'UT' => 0, 'GMT' => 0,
'EST' => -5, 'EDT' => -4,
'CST' => -6, 'CDT' => -5,
'MST' => -7, 'MDT' => -6,
'PST' => -8, 'PDT' => -7,
# Following definition of military zones is original one.
# See RFC 1123 and RFC 2822 for the error in RFC 822.
'A' => +1, 'B' => +2, 'C' => +3, 'D' => +4, 'E' => +5, 'F' =>
+6,
'G' => +7, 'H' => +8, 'I' => +9, 'K' => +10, 'L' => +11, 'M' =>
+12,
'N' => -1, 'O' => -2, 'P' => -3, 'Q' => -4, 'R' => -5, 'S' =>
-6,
'T' => -7, 'U' => -8, 'V' => -9, 'W' => -10, 'X' => -11, 'Y' =>
-12,
}


I am trying to access the constant within.

Thanks,

Cris


pharrington wrote:
> On Dec 31 2009, 4:52�pm, Cris Shupp <cshu...@yahoo.com> wrote:

>> � � offset = offset.to_i


>> � � ZoneOffset.each_pair do |time_zone, zone_offset| #ERROR OCCURS
>> HERE!!!
>> � � � return time_zone if (zone_offset == offset)
>> � � end
>> � � raise ArgumentError, "Illegal arguments! �The offset " <<
>> offset.to_s << " is unknown."
>> � end
>> end
>> --
>> Posted viahttp://www.ruby-forum.com/.
>
> As the error status, there is no Time::ZoneOffset constant....
>
> Are you copying/pasting random code from somewhere?
> If not, what is ZoneOffset even supposed to be?

--
Posted via http://www.ruby-forum.com/.

Brian Candler

unread,
Jan 4, 2010, 11:30:21 AM1/4/10
to
>> require 'time'
=> true
>> Time::ZoneOffset

NameError: uninitialized constant Time::ZoneOffset
from (irb):2
>> (class << Time; self; end)::ZoneOffset
=> {"V"=>-9, "K"=>10, "PDT"=>-7, "W"=>-10, "L"=>11, "A"=>1, "X"=>-11,
"M"=>12, "B"=>2, "Y"=>-12, "N"=>-1, "C"=>3, "MST"=>-7, "GMT"=>0,
"O"=>-2, "D"=>4, "CST"=>-6, "Z"=>0, "UTC"=>0, "P"=>-3, "E"=>5, "Q"=>-4,
"F"=>6, "PST"=>-8, "EST"=>-5, "R"=>-5, "G"=>7, "MDT"=>-6, "S"=>-6,
"H"=>8, "CDT"=>-5, "T"=>-7, "I"=>9, "UT"=>0, "U"=>-8, "EDT"=>-4}
0 new messages