Example #1
0
def initialize_date_from_format(interp, func_name, w_date,
                                format_string, time_string, w_datetimezone):

    if not w_datetimezone:
        w_date.timezone = interp.get_default_timezone(func_name)
    else:
        w_date.timezone = w_datetimezone

    w_date.timelib_time, error = timelib.timelib_time_from_format(
        format_string, time_string
    )

    now = timelib.timelib_time_ctor()
    now.c_zone_type = timelib.TIMELIB_ZONETYPE_ID
    now.c_tz_info = w_date.timezone.timelib_timezone
    zone_type = rffi.cast(lltype.Signed, w_date.timelib_time.c_zone_type)

    if zone_type == timelib.ZONETYPE_ID:
        pass
    elif zone_type == timelib.ZONETYPE_ABBR:
        pass
    elif zone_type == timelib.ZONETYPE_OFFSET:
        pass

    timelib.timelib_unixtime2local(now, int(time.time()))
    timelib.timelib_fill_holes(w_date.timelib_time, now, timelib.TIMELIB_NO_CLONE)
    timelib.timelib_update_ts(w_date.timelib_time, w_date.timezone.timelib_timezone)
    timelib.timelib_time_dtor(now)

    w_date.timelib_time.c_have_relative = rffi.cast(
        timelib.timelib_time.TO.c_have_relative, 1
    )

    return error
Example #2
0
def initialize_date_from_format(interp, func_name, w_date, format_string,
                                time_string, w_datetimezone):

    if not w_datetimezone:
        w_date.timezone = interp.get_default_timezone(func_name)
    else:
        w_date.timezone = w_datetimezone

    w_date.timelib_time, error = timelib.timelib_time_from_format(
        format_string, time_string)

    now = timelib.timelib_time_ctor()
    now.c_zone_type = timelib.TIMELIB_ZONETYPE_ID
    now.c_tz_info = w_date.timezone.timelib_timezone
    zone_type = rffi.cast(lltype.Signed, w_date.timelib_time.c_zone_type)

    if zone_type == timelib.ZONETYPE_ID:
        pass
    elif zone_type == timelib.ZONETYPE_ABBR:
        pass
    elif zone_type == timelib.ZONETYPE_OFFSET:
        pass

    timelib.timelib_unixtime2local(now, int(time.time()))
    timelib.timelib_fill_holes(w_date.timelib_time, now,
                               timelib.TIMELIB_NO_CLONE)
    timelib.timelib_update_ts(w_date.timelib_time,
                              w_date.timezone.timelib_timezone)
    timelib.timelib_time_dtor(now)

    w_date.timelib_time.c_have_relative = rffi.cast(
        timelib.timelib_time.TO.c_have_relative, 1)

    return error
Example #3
0
def create_from_format(interp, format_string, time_string, w_datetimezone):

    date = W_DateTime(k_DateTime, [])
    func_name = "DateTime::createFromFormat"

    if w_datetimezone:
        date.timelib_timezone = w_datetimezone.timelib_timezone
    else:
        date.timelib_timezone = interp.get_default_timezone(func_name)

    date.timelib_time = timelib.timelib_time_from_format(
        format_string, time_string, date.timelib_timezone)

    return date
Example #4
0
def create_from_format(interp, format_string, time_string, w_datetimezone):

    date = W_DateTime(k_DateTime, [])
    func_name = "DateTime::createFromFormat"

    if w_datetimezone:
        date.timelib_timezone = w_datetimezone.timelib_timezone
    else:
        date.timelib_timezone = interp.get_default_timezone(func_name)

    date.timelib_time = timelib.timelib_time_from_format(
        format_string, time_string, date.timelib_timezone
    )

    return date
Example #5
0
def date_parse_from_format(interp, format_string, time_string):
    timelib_time, error = timelib.timelib_time_from_format(
        format_string, time_string
    )
    return _date_parse(interp.space, timelib_time, error)