o:$YARD::CodeObjects::MethodObject:@scope:
instance:@visibility:public:
@pathI"Time#gmtime:EF:@parameters[�:@files[[I"time.c;T0:@current_file_has_commentsF:
@name:gmtime:@source_type:c:
@tags[�:@docstringIC:YARD::Docstring"fConverts <i>time</i> to UTC (GMT), modifying the receiver.

   t = Time.now   #=> 2007-11-19 08:18:31 -0600
   t.gmt?         #=> false
   t.gmtime       #=> 2007-11-19 14:18:31 UTC
   t.gmt?         #=> true

   t = Time.now   #=> 2007-11-19 08:18:51 -0600
   t.utc?         #=> false
   t.utc          #=> 2007-11-19 14:18:51 UTC
   t.utc?         #=> true;F:@objectIu:YARD::StubProxyTime#gmtime;F:
@summary0:@ref_tags[�;[o:YARD::Tags::OverloadTag
:@tag_nameI"
overload;F:
@text0;;:@types0:@signatureI"gmtime;F;IC;"�;F;Iu;Time#gmtime;F;0;[�;[o:YARD::Tags::Tag
;I"return;F;I"�;F;0;[I"	Time;F;0:	@allI"@return [Time];F;[�;Iu;Time#gmtime;Fo;
;I"
overload;F;0;:utc;0;I"utc;F;IC;"�;F;Iu;Time#gmtime;F;0;[�;[o;
;I"return;F;I"�;F;0;[I"	Time;F;0; I"@return [Time];F;[�;Iu;Time#gmtime;F; I"�Converts <i>time</i> to UTC (GMT), modifying the receiver.

   t = Time.now   #=> 2007-11-19 08:18:31 -0600
   t.gmt?         #=> false
   t.gmtime       #=> 2007-11-19 14:18:31 UTC
   t.gmt?         #=> true

   t = Time.now   #=> 2007-11-19 08:18:51 -0600
   t.utc?         #=> false
   t.utc          #=> 2007-11-19 14:18:51 UTC
   t.utc?         #=> true


@overload gmtime
  @return [Time]
@overload utc
  @return [Time];F:@namespaceIu;	Time;F:@docstring_extra0:@sourceI"w/*
 *  call-seq:
 *     time.gmtime    -> time
 *     time.utc       -> time
 *
 *  Converts <i>time</i> to UTC (GMT), modifying the receiver.
 *
 *     t = Time.now   #=> 2007-11-19 08:18:31 -0600
 *     t.gmt?         #=> false
 *     t.gmtime       #=> 2007-11-19 14:18:31 UTC
 *     t.gmt?         #=> true
 *
 *     t = Time.now   #=> 2007-11-19 08:18:51 -0600
 *     t.utc?         #=> false
 *     t.utc          #=> 2007-11-19 14:18:51 UTC
 *     t.utc?         #=> true
 */

static VALUE
time_gmtime(VALUE time)
{
    struct time_object *tobj;
    struct vtm vtm;

    GetTimeval(time, tobj);
    if (TIME_UTC_P(tobj)) {
    if (tobj->tm_got)
        return time;
    }
    else {
    time_modify(time);
    }

    if (!gmtimew(tobj->timew, &vtm))
    rb_raise(rb_eArgError, "gmtime error");
    tobj->vtm = vtm;

    tobj->tm_got = 1;
    TIME_SET_UTC(tobj);
    return time;
};F