/* gitg-date.c generated by valac 0.34.7, the Vala compiler
 * generated from gitg-date.vala, do not modify */

/*
 * This file is part of gitg
 *
 * Copyright (C) 2013 - Jesse van den Kieboom
 *
 * gitg is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 *
 * gitg is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with gitg. If not, see <http://www.gnu.org/licenses/>.
 */

#include <glib.h>
#include <glib-object.h>
#include <gio/gio.h>
#include <stdlib.h>
#include <string.h>
#include <float.h>
#include <math.h>
#include <glib/gi18n-lib.h>
#include <gdesktop-enums.h>


#define GITG_TYPE_DATE (gitg_date_get_type ())
#define GITG_DATE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GITG_TYPE_DATE, GitgDate))
#define GITG_DATE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GITG_TYPE_DATE, GitgDateClass))
#define GITG_IS_DATE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GITG_TYPE_DATE))
#define GITG_IS_DATE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GITG_TYPE_DATE))
#define GITG_DATE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GITG_TYPE_DATE, GitgDateClass))

typedef struct _GitgDate GitgDate;
typedef struct _GitgDateClass GitgDateClass;
typedef struct _GitgDatePrivate GitgDatePrivate;
#define _g_date_time_unref0(var) ((var == NULL) ? NULL : (var = (g_date_time_unref (var), NULL)))
#define _g_free0(var) (var = (g_free (var), NULL))
#define _g_time_zone_unref0(var) ((var == NULL) ? NULL : (var = (g_time_zone_unref (var), NULL)))
#define _g_match_info_unref0(var) ((var == NULL) ? NULL : (var = (g_match_info_unref (var), NULL)))
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
#define _g_settings_schema_unref0(var) ((var == NULL) ? NULL : (var = (g_settings_schema_unref (var), NULL)))
#define _g_settings_schema_source_unref0(var) ((var == NULL) ? NULL : (var = (g_settings_schema_source_unref (var), NULL)))
#define _g_regex_unref0(var) ((var == NULL) ? NULL : (var = (g_regex_unref (var), NULL)))
#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))

typedef enum  {
	GITG_DATE_ERROR_INVALID_FORMAT
} GitgDateError;
#define GITG_DATE_ERROR gitg_date_error_quark ()
struct _GitgDate {
	GObject parent_instance;
	GitgDatePrivate * priv;
};

struct _GitgDateClass {
	GObjectClass parent_class;
};

struct _GitgDatePrivate {
	GDateTime* d_datetime;
	gchar* _date_string;
};


static gpointer gitg_date_parent_class = NULL;
static GRegex* gitg_date_s_rfc2822;
static GRegex* gitg_date_s_rfc2822 = NULL;
static GRegex* gitg_date_s_iso8601;
static GRegex* gitg_date_s_iso8601 = NULL;
static GRegex* gitg_date_s_internal;
static GRegex* gitg_date_s_internal = NULL;
static GSettings* gitg_date_s_gnome_interface_settings;
static GSettings* gitg_date_s_gnome_interface_settings = NULL;
static gboolean gitg_date_s_tried_gnome_interface_settings;
static gboolean gitg_date_s_tried_gnome_interface_settings = FALSE;
static gchar** gitg_date_s_months;
static gint gitg_date_s_months_length1;
static gchar** gitg_date_s_months = NULL;
static gint gitg_date_s_months_length1 = 0;
static gint _gitg_date_s_months_size_ = 0;
static GInitableIface* gitg_date_g_initable_parent_iface = NULL;

GQuark gitg_date_error_quark (void);
GType gitg_date_get_type (void) G_GNUC_CONST;
#define GITG_DATE_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), GITG_TYPE_DATE, GitgDatePrivate))
enum  {
	GITG_DATE_DUMMY_PROPERTY,
	GITG_DATE_DATE_STRING,
	GITG_DATE_DATE
};
static gboolean gitg_date_fetch_and_set_int (GMatchInfo* info, const gchar* name, gint* retval);
static gboolean gitg_date_fetch_and_set_double (GMatchInfo* info, const gchar* name, gdouble* retval);
static GDateTime* gitg_date_parse_internal (GMatchInfo* info, GError** error);
static GDateTime* gitg_date_parse_iso8601 (GMatchInfo* info, GError** error);
static GDateTime* gitg_date_parse_rfc2822 (GMatchInfo* info, GError** error);
static gboolean gitg_date_real_init (GInitable* base, GCancellable* cancellable, GError** error);
const gchar* gitg_date_get_date_string (GitgDate* self);
GitgDate* gitg_date_new (const gchar* date, GError** error);
GitgDate* gitg_date_construct (GType object_type, const gchar* date, GError** error);
gchar* gitg_date_for_display (GitgDate* self);
static gboolean gitg_date_get_is_24h (GitgDate* self);
GitgDate* gitg_date_new_for_date_time (GDateTime* dt);
GitgDate* gitg_date_construct_for_date_time (GType object_type, GDateTime* dt);
GDateTime* gitg_date_parse (const gchar* date, GError** error);
GDateTime* gitg_date_get_date (GitgDate* self);
void gitg_date_set_date_string (GitgDate* self, const gchar* value);
static void gitg_date_finalize (GObject* obj);
static void _vala_gitg_date_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec);
static void _vala_gitg_date_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec);


GQuark gitg_date_error_quark (void) {
	return g_quark_from_static_string ("gitg_date_error-quark");
}


static gboolean gitg_date_fetch_and_set_int (GMatchInfo* info, const gchar* name, gint* retval) {
	gboolean result = FALSE;
	gchar* val = NULL;
	GMatchInfo* _tmp0_ = NULL;
	const gchar* _tmp1_ = NULL;
	gchar* _tmp2_ = NULL;
	const gchar* _tmp3_ = NULL;
	const gchar* _tmp4_ = NULL;
	gint _tmp5_ = 0;
#line 139 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	g_return_val_if_fail (info != NULL, FALSE);
#line 139 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	g_return_val_if_fail (name != NULL, FALSE);
#line 141 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp0_ = info;
#line 141 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp1_ = name;
#line 141 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp2_ = g_match_info_fetch_named (_tmp0_, _tmp1_);
#line 141 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	val = _tmp2_;
#line 143 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp3_ = val;
#line 143 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	if (_tmp3_ == NULL) {
#line 145 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		result = FALSE;
#line 145 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_free0 (val);
#line 145 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		return result;
#line 157 "gitg-date.c"
	}
#line 148 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp4_ = val;
#line 148 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp5_ = atoi (_tmp4_);
#line 148 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	*retval = _tmp5_;
#line 149 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	result = TRUE;
#line 149 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_g_free0 (val);
#line 149 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	return result;
#line 171 "gitg-date.c"
}


static gdouble double_parse (const gchar* str) {
	gdouble result = 0.0;
	const gchar* _tmp0_ = NULL;
	gdouble _tmp1_ = 0.0;
#line 869 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
	g_return_val_if_fail (str != NULL, 0.0);
#line 870 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
	_tmp0_ = str;
#line 870 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
	_tmp1_ = g_ascii_strtod (_tmp0_, NULL);
#line 870 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
	result = _tmp1_;
#line 870 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
	return result;
#line 189 "gitg-date.c"
}


static gboolean gitg_date_fetch_and_set_double (GMatchInfo* info, const gchar* name, gdouble* retval) {
	gboolean result = FALSE;
	gchar* val = NULL;
	GMatchInfo* _tmp0_ = NULL;
	const gchar* _tmp1_ = NULL;
	gchar* _tmp2_ = NULL;
	const gchar* _tmp3_ = NULL;
	const gchar* _tmp4_ = NULL;
	gdouble _tmp5_ = 0.0;
#line 152 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	g_return_val_if_fail (info != NULL, FALSE);
#line 152 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	g_return_val_if_fail (name != NULL, FALSE);
#line 154 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp0_ = info;
#line 154 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp1_ = name;
#line 154 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp2_ = g_match_info_fetch_named (_tmp0_, _tmp1_);
#line 154 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	val = _tmp2_;
#line 156 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp3_ = val;
#line 156 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	if (_tmp3_ == NULL) {
#line 158 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		result = FALSE;
#line 158 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_free0 (val);
#line 158 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		return result;
#line 224 "gitg-date.c"
	}
#line 161 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp4_ = val;
#line 161 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp5_ = double_parse (_tmp4_);
#line 161 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	*retval = _tmp5_;
#line 162 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	result = TRUE;
#line 162 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_g_free0 (val);
#line 162 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	return result;
#line 238 "gitg-date.c"
}


static gint64 int64_parse (const gchar* str) {
	gint64 result = 0LL;
	const gchar* _tmp0_ = NULL;
	gint64 _tmp1_ = 0LL;
#line 679 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
	g_return_val_if_fail (str != NULL, 0LL);
#line 680 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
	_tmp0_ = str;
#line 680 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
	_tmp1_ = g_ascii_strtoll (_tmp0_, NULL, (guint) 0);
#line 680 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
	result = _tmp1_;
#line 680 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
	return result;
#line 256 "gitg-date.c"
}


static GDateTime* gitg_date_parse_internal (GMatchInfo* info, GError** error) {
	GDateTime* result = NULL;
	gchar* timestamp = NULL;
	GMatchInfo* _tmp0_ = NULL;
	gchar* _tmp1_ = NULL;
	gint64 unixt = 0LL;
	const gchar* _tmp2_ = NULL;
	gint64 _tmp3_ = 0LL;
	gchar* tzs = NULL;
	GMatchInfo* _tmp4_ = NULL;
	gchar* _tmp5_ = NULL;
	const gchar* _tmp6_ = NULL;
#line 165 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	g_return_val_if_fail (info != NULL, NULL);
#line 167 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp0_ = info;
#line 167 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp1_ = g_match_info_fetch_named (_tmp0_, "timestamp");
#line 167 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	timestamp = _tmp1_;
#line 168 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp2_ = timestamp;
#line 168 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp3_ = int64_parse (_tmp2_);
#line 168 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	unixt = _tmp3_;
#line 170 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp4_ = info;
#line 170 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp5_ = g_match_info_fetch_named (_tmp4_, "tz");
#line 170 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	tzs = _tmp5_;
#line 172 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp6_ = tzs;
#line 172 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	if (_tmp6_ != NULL) {
#line 296 "gitg-date.c"
		GDateTime* ret = NULL;
		gint64 _tmp7_ = 0LL;
		GDateTime* _tmp8_ = NULL;
		GDateTime* _tmp9_ = NULL;
		const gchar* _tmp10_ = NULL;
		GTimeZone* _tmp11_ = NULL;
		GTimeZone* _tmp12_ = NULL;
		GDateTime* _tmp13_ = NULL;
		GDateTime* _tmp14_ = NULL;
#line 174 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp7_ = unixt;
#line 174 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp8_ = g_date_time_new_from_unix_utc (_tmp7_);
#line 174 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		ret = _tmp8_;
#line 175 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp9_ = ret;
#line 175 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp10_ = tzs;
#line 175 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp11_ = g_time_zone_new (_tmp10_);
#line 175 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp12_ = _tmp11_;
#line 175 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp13_ = g_date_time_to_timezone (_tmp9_, _tmp12_);
#line 175 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp14_ = _tmp13_;
#line 175 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_time_zone_unref0 (_tmp12_);
#line 175 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		result = _tmp14_;
#line 175 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_date_time_unref0 (ret);
#line 175 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_free0 (tzs);
#line 175 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_free0 (timestamp);
#line 175 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		return result;
#line 336 "gitg-date.c"
	} else {
		gint64 _tmp15_ = 0LL;
		GDateTime* _tmp16_ = NULL;
#line 179 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp15_ = unixt;
#line 179 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp16_ = g_date_time_new_from_unix_local (_tmp15_);
#line 179 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		result = _tmp16_;
#line 179 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_free0 (tzs);
#line 179 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_free0 (timestamp);
#line 179 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		return result;
#line 352 "gitg-date.c"
	}
#line 165 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_g_free0 (tzs);
#line 165 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_g_free0 (timestamp);
#line 358 "gitg-date.c"
}


static GDateTime* gitg_date_parse_iso8601 (GMatchInfo* info, GError** error) {
	GDateTime* result = NULL;
	GTimeZone* tz = NULL;
	GTimeZone* _tmp0_ = NULL;
	gint year = 0;
	gint month = 0;
	gint day = 0;
	gint hour = 0;
	gint minute = 0;
	gdouble seconds = 0.0;
	GMatchInfo* _tmp1_ = NULL;
	GMatchInfo* _tmp2_ = NULL;
	GMatchInfo* _tmp3_ = NULL;
	GMatchInfo* _tmp4_ = NULL;
	GMatchInfo* _tmp5_ = NULL;
	GMatchInfo* _tmp6_ = NULL;
	gchar* tzs = NULL;
	GMatchInfo* _tmp7_ = NULL;
	gchar* _tmp8_ = NULL;
	const gchar* _tmp9_ = NULL;
	GTimeZone* _tmp13_ = NULL;
	gint _tmp14_ = 0;
	gint _tmp15_ = 0;
	gint _tmp16_ = 0;
	gint _tmp17_ = 0;
	gint _tmp18_ = 0;
	gdouble _tmp19_ = 0.0;
	GDateTime* _tmp20_ = NULL;
#line 183 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	g_return_val_if_fail (info != NULL, NULL);
#line 185 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp0_ = g_time_zone_new_utc ();
#line 185 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	tz = _tmp0_;
#line 187 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	year = 0;
#line 188 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	month = 1;
#line 189 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	day = 1;
#line 190 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	hour = 0;
#line 191 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	minute = 0;
#line 192 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	seconds = 0.0;
#line 194 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp1_ = info;
#line 194 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	gitg_date_fetch_and_set_int (_tmp1_, "year", &year);
#line 195 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp2_ = info;
#line 195 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	gitg_date_fetch_and_set_int (_tmp2_, "month", &month);
#line 196 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp3_ = info;
#line 196 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	gitg_date_fetch_and_set_int (_tmp3_, "day", &day);
#line 197 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp4_ = info;
#line 197 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	gitg_date_fetch_and_set_int (_tmp4_, "hour", &hour);
#line 198 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp5_ = info;
#line 198 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	gitg_date_fetch_and_set_int (_tmp5_, "minute", &minute);
#line 199 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp6_ = info;
#line 199 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	gitg_date_fetch_and_set_double (_tmp6_, "seconds", &seconds);
#line 201 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp7_ = info;
#line 201 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp8_ = g_match_info_fetch_named (_tmp7_, "tz");
#line 201 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	tzs = _tmp8_;
#line 203 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp9_ = tzs;
#line 203 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	if (_tmp9_ != NULL) {
#line 442 "gitg-date.c"
		const gchar* _tmp10_ = NULL;
		GTimeZone* _tmp11_ = NULL;
#line 205 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp10_ = tzs;
#line 205 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp11_ = g_time_zone_new (_tmp10_);
#line 205 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_time_zone_unref0 (tz);
#line 205 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		tz = _tmp11_;
#line 453 "gitg-date.c"
	} else {
		GTimeZone* _tmp12_ = NULL;
#line 209 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp12_ = g_time_zone_new_local ();
#line 209 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_time_zone_unref0 (tz);
#line 209 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		tz = _tmp12_;
#line 462 "gitg-date.c"
	}
#line 212 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp13_ = tz;
#line 212 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp14_ = year;
#line 212 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp15_ = month;
#line 212 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp16_ = day;
#line 212 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp17_ = hour;
#line 212 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp18_ = minute;
#line 212 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp19_ = seconds;
#line 212 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp20_ = g_date_time_new (_tmp13_, _tmp14_, _tmp15_, _tmp16_, _tmp17_, _tmp18_, _tmp19_);
#line 212 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	result = _tmp20_;
#line 212 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_g_free0 (tzs);
#line 212 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_g_time_zone_unref0 (tz);
#line 212 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	return result;
#line 488 "gitg-date.c"
}


static GDateTime* gitg_date_parse_rfc2822 (GMatchInfo* info, GError** error) {
	GDateTime* result = NULL;
	GTimeZone* tz = NULL;
	gint year = 0;
	gint month = 0;
	gint day = 0;
	gint hour = 0;
	gint minute = 0;
	gdouble seconds = 0.0;
	GMatchInfo* _tmp0_ = NULL;
	gchar* monthstr = NULL;
	GMatchInfo* _tmp1_ = NULL;
	gchar* _tmp2_ = NULL;
	gint _tmp16_ = 0;
	GMatchInfo* _tmp18_ = NULL;
	GMatchInfo* _tmp19_ = NULL;
	GMatchInfo* _tmp20_ = NULL;
	GMatchInfo* _tmp21_ = NULL;
	gchar* tzs = NULL;
	GMatchInfo* _tmp22_ = NULL;
	gchar* _tmp23_ = NULL;
	const gchar* _tmp24_ = NULL;
	GTimeZone* _tmp28_ = NULL;
	gint _tmp29_ = 0;
	gint _tmp30_ = 0;
	gint _tmp31_ = 0;
	gint _tmp32_ = 0;
	gint _tmp33_ = 0;
	gdouble _tmp34_ = 0.0;
	GDateTime* _tmp35_ = NULL;
	GError * _inner_error_ = NULL;
#line 215 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	g_return_val_if_fail (info != NULL, NULL);
#line 218 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	year = 0;
#line 219 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	month = 0;
#line 220 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	day = 1;
#line 221 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	hour = 0;
#line 222 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	minute = 0;
#line 223 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	seconds = (gdouble) 0;
#line 225 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp0_ = info;
#line 225 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	gitg_date_fetch_and_set_int (_tmp0_, "year", &year);
#line 227 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp1_ = info;
#line 227 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp2_ = g_match_info_fetch_named (_tmp1_, "month");
#line 227 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	monthstr = _tmp2_;
#line 547 "gitg-date.c"
	{
		gint i = 0;
#line 229 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		i = 0;
#line 552 "gitg-date.c"
		{
			gboolean _tmp3_ = FALSE;
#line 229 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			_tmp3_ = TRUE;
#line 229 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			while (TRUE) {
#line 559 "gitg-date.c"
				gint _tmp5_ = 0;
				gchar** _tmp6_ = NULL;
				gint _tmp6__length1 = 0;
				gboolean _tmp7_ = FALSE;
				gchar** _tmp8_ = NULL;
				gint _tmp8__length1 = 0;
				gint _tmp9_ = 0;
				const gchar* _tmp10_ = NULL;
#line 229 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
				if (!_tmp3_) {
#line 570 "gitg-date.c"
					gint _tmp4_ = 0;
#line 229 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					_tmp4_ = i;
#line 229 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					i = _tmp4_ + 1;
#line 576 "gitg-date.c"
				}
#line 229 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
				_tmp3_ = FALSE;
#line 229 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
				_tmp5_ = i;
#line 229 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
				_tmp6_ = gitg_date_s_months;
#line 229 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
				_tmp6__length1 = gitg_date_s_months_length1;
#line 229 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
				if (!(_tmp5_ < _tmp6__length1)) {
#line 229 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					break;
#line 590 "gitg-date.c"
				}
#line 231 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
				_tmp8_ = gitg_date_s_months;
#line 231 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
				_tmp8__length1 = gitg_date_s_months_length1;
#line 231 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
				_tmp9_ = i;
#line 231 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
				_tmp10_ = _tmp8_[_tmp9_];
#line 231 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
				if (_tmp10_ != NULL) {
#line 602 "gitg-date.c"
					gchar** _tmp11_ = NULL;
					gint _tmp11__length1 = 0;
					gint _tmp12_ = 0;
					const gchar* _tmp13_ = NULL;
					const gchar* _tmp14_ = NULL;
#line 231 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					_tmp11_ = gitg_date_s_months;
#line 231 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					_tmp11__length1 = gitg_date_s_months_length1;
#line 231 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					_tmp12_ = i;
#line 231 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					_tmp13_ = _tmp11_[_tmp12_];
#line 231 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					_tmp14_ = monthstr;
#line 231 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					_tmp7_ = g_strcmp0 (_tmp13_, _tmp14_) == 0;
#line 620 "gitg-date.c"
				} else {
#line 231 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					_tmp7_ = FALSE;
#line 624 "gitg-date.c"
				}
#line 231 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
				if (_tmp7_) {
#line 628 "gitg-date.c"
					gint _tmp15_ = 0;
#line 233 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					_tmp15_ = i;
#line 233 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					month = _tmp15_;
#line 234 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					break;
#line 636 "gitg-date.c"
				}
			}
		}
	}
#line 238 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp16_ = month;
#line 238 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	if (_tmp16_ == 0) {
#line 645 "gitg-date.c"
		GError* _tmp17_ = NULL;
#line 240 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp17_ = g_error_new_literal (GITG_DATE_ERROR, GITG_DATE_ERROR_INVALID_FORMAT, "Invalid month specified");
#line 240 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_inner_error_ = _tmp17_;
#line 240 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		g_propagate_error (error, _inner_error_);
#line 240 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_free0 (monthstr);
#line 240 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_time_zone_unref0 (tz);
#line 240 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		return NULL;
#line 659 "gitg-date.c"
	}
#line 243 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp18_ = info;
#line 243 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	gitg_date_fetch_and_set_int (_tmp18_, "day", &day);
#line 244 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp19_ = info;
#line 244 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	gitg_date_fetch_and_set_int (_tmp19_, "hour", &hour);
#line 245 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp20_ = info;
#line 245 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	gitg_date_fetch_and_set_int (_tmp20_, "minute", &minute);
#line 246 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp21_ = info;
#line 246 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	gitg_date_fetch_and_set_double (_tmp21_, "seconds", &seconds);
#line 248 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp22_ = info;
#line 248 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp23_ = g_match_info_fetch_named (_tmp22_, "tz");
#line 248 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	tzs = _tmp23_;
#line 250 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp24_ = tzs;
#line 250 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	if (_tmp24_ != NULL) {
#line 687 "gitg-date.c"
		const gchar* _tmp25_ = NULL;
		GTimeZone* _tmp26_ = NULL;
#line 252 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp25_ = tzs;
#line 252 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp26_ = g_time_zone_new (_tmp25_);
#line 252 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_time_zone_unref0 (tz);
#line 252 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		tz = _tmp26_;
#line 698 "gitg-date.c"
	} else {
		GTimeZone* _tmp27_ = NULL;
#line 256 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp27_ = g_time_zone_new_local ();
#line 256 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_time_zone_unref0 (tz);
#line 256 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		tz = _tmp27_;
#line 707 "gitg-date.c"
	}
#line 259 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp28_ = tz;
#line 259 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp29_ = year;
#line 259 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp30_ = month;
#line 259 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp31_ = day;
#line 259 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp32_ = hour;
#line 259 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp33_ = minute;
#line 259 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp34_ = seconds;
#line 259 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp35_ = g_date_time_new (_tmp28_, _tmp29_, _tmp30_, _tmp31_, _tmp32_, _tmp33_, _tmp34_);
#line 259 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	result = _tmp35_;
#line 259 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_g_free0 (tzs);
#line 259 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_g_free0 (monthstr);
#line 259 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_g_time_zone_unref0 (tz);
#line 259 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	return result;
#line 735 "gitg-date.c"
}


static gboolean gitg_date_real_init (GInitable* base, GCancellable* cancellable, GError** error) {
	GitgDate * self;
	gboolean result = FALSE;
	GMatchInfo* info = NULL;
	GRegex* _tmp0_ = NULL;
	const gchar* _tmp1_ = NULL;
	GMatchInfo* _tmp2_ = NULL;
	gboolean _tmp3_ = FALSE;
	GRegex* _tmp9_ = NULL;
	const gchar* _tmp10_ = NULL;
	GMatchInfo* _tmp11_ = NULL;
	gboolean _tmp12_ = FALSE;
	GRegex* _tmp18_ = NULL;
	const gchar* _tmp19_ = NULL;
	GMatchInfo* _tmp20_ = NULL;
	gboolean _tmp21_ = FALSE;
	GError* _tmp27_ = NULL;
	gboolean _tmp28_ = FALSE;
	GError * _inner_error_ = NULL;
#line 274 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	self = (GitgDate*) base;
#line 278 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp0_ = gitg_date_s_internal;
#line 278 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp1_ = self->priv->_date_string;
#line 278 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp3_ = g_regex_match (_tmp0_, _tmp1_, 0, &_tmp2_);
#line 278 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_g_match_info_unref0 (info);
#line 278 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	info = _tmp2_;
#line 278 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	if (_tmp3_) {
#line 772 "gitg-date.c"
		GDateTime* _tmp4_ = NULL;
		GMatchInfo* _tmp5_ = NULL;
		GDateTime* _tmp6_ = NULL;
		GDateTime* _tmp8_ = NULL;
#line 280 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp5_ = info;
#line 280 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp6_ = gitg_date_parse_internal (_tmp5_, &_inner_error_);
#line 280 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp4_ = _tmp6_;
#line 280 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 785 "gitg-date.c"
			gboolean _tmp7_ = FALSE;
#line 280 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			g_propagate_error (error, _inner_error_);
#line 280 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			_g_match_info_unref0 (info);
#line 280 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			return _tmp7_;
#line 793 "gitg-date.c"
		}
#line 280 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp8_ = _tmp4_;
#line 280 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp4_ = NULL;
#line 280 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_date_time_unref0 (self->priv->d_datetime);
#line 280 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		self->priv->d_datetime = _tmp8_;
#line 282 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		result = TRUE;
#line 282 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_date_time_unref0 (_tmp4_);
#line 282 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_match_info_unref0 (info);
#line 282 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		return result;
#line 811 "gitg-date.c"
	}
#line 285 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp9_ = gitg_date_s_iso8601;
#line 285 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp10_ = self->priv->_date_string;
#line 285 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp12_ = g_regex_match (_tmp9_, _tmp10_, 0, &_tmp11_);
#line 285 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_g_match_info_unref0 (info);
#line 285 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	info = _tmp11_;
#line 285 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	if (_tmp12_) {
#line 825 "gitg-date.c"
		GDateTime* _tmp13_ = NULL;
		GMatchInfo* _tmp14_ = NULL;
		GDateTime* _tmp15_ = NULL;
		GDateTime* _tmp17_ = NULL;
#line 287 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp14_ = info;
#line 287 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp15_ = gitg_date_parse_iso8601 (_tmp14_, &_inner_error_);
#line 287 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp13_ = _tmp15_;
#line 287 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 838 "gitg-date.c"
			gboolean _tmp16_ = FALSE;
#line 287 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			g_propagate_error (error, _inner_error_);
#line 287 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			_g_match_info_unref0 (info);
#line 287 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			return _tmp16_;
#line 846 "gitg-date.c"
		}
#line 287 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp17_ = _tmp13_;
#line 287 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp13_ = NULL;
#line 287 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_date_time_unref0 (self->priv->d_datetime);
#line 287 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		self->priv->d_datetime = _tmp17_;
#line 289 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		result = TRUE;
#line 289 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_date_time_unref0 (_tmp13_);
#line 289 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_match_info_unref0 (info);
#line 289 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		return result;
#line 864 "gitg-date.c"
	}
#line 292 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp18_ = gitg_date_s_rfc2822;
#line 292 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp19_ = self->priv->_date_string;
#line 292 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp21_ = g_regex_match (_tmp18_, _tmp19_, 0, &_tmp20_);
#line 292 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_g_match_info_unref0 (info);
#line 292 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	info = _tmp20_;
#line 292 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	if (_tmp21_) {
#line 878 "gitg-date.c"
		GDateTime* _tmp22_ = NULL;
		GMatchInfo* _tmp23_ = NULL;
		GDateTime* _tmp24_ = NULL;
		GDateTime* _tmp26_ = NULL;
#line 294 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp23_ = info;
#line 294 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp24_ = gitg_date_parse_rfc2822 (_tmp23_, &_inner_error_);
#line 294 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp22_ = _tmp24_;
#line 294 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 891 "gitg-date.c"
			gboolean _tmp25_ = FALSE;
#line 294 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			g_propagate_error (error, _inner_error_);
#line 294 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			_g_match_info_unref0 (info);
#line 294 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			return _tmp25_;
#line 899 "gitg-date.c"
		}
#line 294 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp26_ = _tmp22_;
#line 294 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp22_ = NULL;
#line 294 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_date_time_unref0 (self->priv->d_datetime);
#line 294 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		self->priv->d_datetime = _tmp26_;
#line 296 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		result = TRUE;
#line 296 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_date_time_unref0 (_tmp22_);
#line 296 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_match_info_unref0 (info);
#line 296 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		return result;
#line 917 "gitg-date.c"
	}
#line 299 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp27_ = g_error_new_literal (GITG_DATE_ERROR, GITG_DATE_ERROR_INVALID_FORMAT, "Invalid date format");
#line 299 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_inner_error_ = _tmp27_;
#line 299 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	g_propagate_error (error, _inner_error_);
#line 299 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_g_match_info_unref0 (info);
#line 299 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	return _tmp28_;
#line 929 "gitg-date.c"
}


GitgDate* gitg_date_construct (GType object_type, const gchar* date, GError** error) {
	GitgDate * self = NULL;
	const gchar* _tmp0_ = NULL;
	GError * _inner_error_ = NULL;
#line 302 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	g_return_val_if_fail (date != NULL, NULL);
#line 304 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp0_ = date;
#line 304 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	self = (GitgDate*) g_object_new (object_type, "date-string", _tmp0_, NULL);
#line 305 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	g_initable_init (G_TYPE_CHECK_INSTANCE_CAST (self, g_initable_get_type (), GInitable), NULL, &_inner_error_);
#line 305 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 305 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		g_propagate_error (error, _inner_error_);
#line 305 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_object_unref0 (self);
#line 305 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		return NULL;
#line 953 "gitg-date.c"
	}
#line 302 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	return self;
#line 957 "gitg-date.c"
}


GitgDate* gitg_date_new (const gchar* date, GError** error) {
#line 302 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	return gitg_date_construct (GITG_TYPE_DATE, date, error);
#line 964 "gitg-date.c"
}


static gpointer _g_date_time_ref0 (gpointer self) {
#line 337 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	return self ? g_date_time_ref (self) : NULL;
#line 971 "gitg-date.c"
}


gchar* gitg_date_for_display (GitgDate* self) {
	gchar* result = NULL;
	GDateTime* dt = NULL;
	GDateTime* _tmp0_ = NULL;
	GDateTime* _tmp1_ = NULL;
	GTimeSpan t = 0LL;
	GDateTime* _tmp2_ = NULL;
	GDateTime* _tmp3_ = NULL;
	GDateTime* _tmp4_ = NULL;
	GTimeSpan _tmp5_ = 0LL;
	GTimeSpan _tmp6_ = 0LL;
	GTimeSpan _tmp7_ = 0LL;
#line 335 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 337 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp0_ = self->priv->d_datetime;
#line 337 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp1_ = _g_date_time_ref0 (_tmp0_);
#line 337 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	dt = _tmp1_;
#line 338 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp2_ = g_date_time_new_now_local ();
#line 338 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp3_ = _tmp2_;
#line 338 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp4_ = dt;
#line 338 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp5_ = g_date_time_difference (_tmp3_, _tmp4_);
#line 338 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp6_ = _tmp5_;
#line 338 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_g_date_time_unref0 (_tmp3_);
#line 338 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	t = _tmp6_;
#line 340 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp7_ = t;
#line 340 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	if (((gdouble) _tmp7_) < (G_TIME_SPAN_MINUTE * 29.5)) {
#line 1013 "gitg-date.c"
		gint rounded_minutes = 0;
		GTimeSpan _tmp8_ = 0LL;
		gdouble _tmp9_ = 0.0;
		gint _tmp10_ = 0;
#line 342 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp8_ = t;
#line 342 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp9_ = round ((gdouble) (((gfloat) _tmp8_) / G_TIME_SPAN_MINUTE));
#line 342 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		rounded_minutes = (gint) _tmp9_;
#line 344 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp10_ = rounded_minutes;
#line 344 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		if (_tmp10_ == 0) {
#line 1028 "gitg-date.c"
			const gchar* _tmp11_ = NULL;
			gchar* _tmp12_ = NULL;
#line 346 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			_tmp11_ = _ ("Now");
#line 346 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			_tmp12_ = g_strdup (_tmp11_);
#line 346 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			result = _tmp12_;
#line 346 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			_g_date_time_unref0 (dt);
#line 346 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			return result;
#line 1041 "gitg-date.c"
		} else {
			gint _tmp13_ = 0;
			const gchar* _tmp14_ = NULL;
			gint _tmp15_ = 0;
			gchar* _tmp16_ = NULL;
#line 350 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			_tmp13_ = rounded_minutes;
#line 350 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			_tmp14_ = ngettext ("A minute ago", "%d minutes ago", (gulong) _tmp13_);
#line 350 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			_tmp15_ = rounded_minutes;
#line 350 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			_tmp16_ = g_strdup_printf (_tmp14_, _tmp15_);
#line 350 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			result = _tmp16_;
#line 350 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			_g_date_time_unref0 (dt);
#line 350 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			return result;
#line 1061 "gitg-date.c"
		}
	} else {
		GTimeSpan _tmp17_ = 0LL;
#line 353 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp17_ = t;
#line 353 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		if (_tmp17_ < (G_TIME_SPAN_MINUTE * 45)) {
#line 1069 "gitg-date.c"
			const gchar* _tmp18_ = NULL;
			gchar* _tmp19_ = NULL;
#line 355 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			_tmp18_ = _ ("Half an hour ago");
#line 355 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			_tmp19_ = g_strdup (_tmp18_);
#line 355 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			result = _tmp19_;
#line 355 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			_g_date_time_unref0 (dt);
#line 355 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			return result;
#line 1082 "gitg-date.c"
		} else {
			GTimeSpan _tmp20_ = 0LL;
#line 357 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			_tmp20_ = t;
#line 357 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			if (((gdouble) _tmp20_) < (G_TIME_SPAN_HOUR * 23.5)) {
#line 1089 "gitg-date.c"
				gint rounded_hours = 0;
				GTimeSpan _tmp21_ = 0LL;
				gdouble _tmp22_ = 0.0;
				gint _tmp23_ = 0;
				const gchar* _tmp24_ = NULL;
				gint _tmp25_ = 0;
				gchar* _tmp26_ = NULL;
#line 359 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
				_tmp21_ = t;
#line 359 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
				_tmp22_ = round ((gdouble) (((gfloat) _tmp21_) / G_TIME_SPAN_HOUR));
#line 359 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
				rounded_hours = (gint) _tmp22_;
#line 360 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
				_tmp23_ = rounded_hours;
#line 360 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
				_tmp24_ = ngettext ("An hour ago", "%d hours ago", (gulong) _tmp23_);
#line 360 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
				_tmp25_ = rounded_hours;
#line 360 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
				_tmp26_ = g_strdup_printf (_tmp24_, _tmp25_);
#line 360 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
				result = _tmp26_;
#line 360 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
				_g_date_time_unref0 (dt);
#line 360 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
				return result;
#line 1117 "gitg-date.c"
			} else {
				GTimeSpan _tmp27_ = 0LL;
#line 362 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
				_tmp27_ = t;
#line 362 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
				if (_tmp27_ < (G_TIME_SPAN_DAY * 7)) {
#line 1124 "gitg-date.c"
					gint rounded_days = 0;
					GTimeSpan _tmp28_ = 0LL;
					gdouble _tmp29_ = 0.0;
					gint _tmp30_ = 0;
					const gchar* _tmp31_ = NULL;
					gint _tmp32_ = 0;
					gchar* _tmp33_ = NULL;
#line 364 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					_tmp28_ = t;
#line 364 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					_tmp29_ = round ((gdouble) (((gfloat) _tmp28_) / G_TIME_SPAN_DAY));
#line 364 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					rounded_days = (gint) _tmp29_;
#line 365 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					_tmp30_ = rounded_days;
#line 365 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					_tmp31_ = ngettext ("A day ago", "%d days ago", (gulong) _tmp30_);
#line 365 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					_tmp32_ = rounded_days;
#line 365 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					_tmp33_ = g_strdup_printf (_tmp31_, _tmp32_);
#line 365 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					result = _tmp33_;
#line 365 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					_g_date_time_unref0 (dt);
#line 365 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					return result;
#line 1152 "gitg-date.c"
				} else {
					GDateTime* _tmp34_ = NULL;
					gint _tmp35_ = 0;
					GDateTime* _tmp36_ = NULL;
					GDateTime* _tmp37_ = NULL;
					gint _tmp38_ = 0;
					gboolean _tmp39_ = FALSE;
#line 367 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					_tmp34_ = dt;
#line 367 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					_tmp35_ = g_date_time_get_year (_tmp34_);
#line 367 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					_tmp36_ = g_date_time_new_now_local ();
#line 367 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					_tmp37_ = _tmp36_;
#line 367 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					_tmp38_ = g_date_time_get_year (_tmp37_);
#line 367 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					_tmp39_ = _tmp35_ == _tmp38_;
#line 367 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					_g_date_time_unref0 (_tmp37_);
#line 367 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
					if (_tmp39_) {
#line 1176 "gitg-date.c"
						gboolean _tmp40_ = FALSE;
						gboolean _tmp41_ = FALSE;
#line 369 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
						_tmp40_ = gitg_date_get_is_24h (self);
#line 369 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
						_tmp41_ = _tmp40_;
#line 369 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
						if (_tmp41_) {
#line 1185 "gitg-date.c"
							GDateTime* _tmp42_ = NULL;
							const gchar* _tmp43_ = NULL;
							gchar* _tmp44_ = NULL;
#line 374 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
							_tmp42_ = dt;
#line 374 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
							_tmp43_ = _ ("%b %e, %H:%M");
#line 374 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
							_tmp44_ = g_date_time_format (_tmp42_, _tmp43_);
#line 374 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
							result = _tmp44_;
#line 374 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
							_g_date_time_unref0 (dt);
#line 374 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
							return result;
#line 1201 "gitg-date.c"
						} else {
							GDateTime* _tmp45_ = NULL;
							const gchar* _tmp46_ = NULL;
							gchar* _tmp47_ = NULL;
#line 381 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
							_tmp45_ = dt;
#line 381 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
							_tmp46_ = _ ("%b %e, %I:%M %p");
#line 381 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
							_tmp47_ = g_date_time_format (_tmp45_, _tmp46_);
#line 381 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
							result = _tmp47_;
#line 381 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
							_g_date_time_unref0 (dt);
#line 381 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
							return result;
#line 1218 "gitg-date.c"
						}
					} else {
						gboolean _tmp48_ = FALSE;
						gboolean _tmp49_ = FALSE;
#line 386 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
						_tmp48_ = gitg_date_get_is_24h (self);
#line 386 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
						_tmp49_ = _tmp48_;
#line 386 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
						if (_tmp49_) {
#line 1229 "gitg-date.c"
							GDateTime* _tmp50_ = NULL;
							const gchar* _tmp51_ = NULL;
							gchar* _tmp52_ = NULL;
#line 391 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
							_tmp50_ = dt;
#line 391 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
							_tmp51_ = _ ("%b %e %Y, %H:%M");
#line 391 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
							_tmp52_ = g_date_time_format (_tmp50_, _tmp51_);
#line 391 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
							result = _tmp52_;
#line 391 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
							_g_date_time_unref0 (dt);
#line 391 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
							return result;
#line 1245 "gitg-date.c"
						} else {
							GDateTime* _tmp53_ = NULL;
							const gchar* _tmp54_ = NULL;
							gchar* _tmp55_ = NULL;
#line 398 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
							_tmp53_ = dt;
#line 398 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
							_tmp54_ = _ ("%b %e %Y, %I:%M %p");
#line 398 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
							_tmp55_ = g_date_time_format (_tmp53_, _tmp54_);
#line 398 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
							result = _tmp55_;
#line 398 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
							_g_date_time_unref0 (dt);
#line 398 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
							return result;
#line 1262 "gitg-date.c"
						}
					}
				}
			}
		}
	}
#line 335 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_g_date_time_unref0 (dt);
#line 1271 "gitg-date.c"
}


GitgDate* gitg_date_construct_for_date_time (GType object_type, GDateTime* dt) {
	GitgDate * self = NULL;
	GDateTime* _tmp0_ = NULL;
	GDateTime* _tmp1_ = NULL;
#line 403 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	g_return_val_if_fail (dt != NULL, NULL);
#line 403 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	self = (GitgDate*) g_object_new (object_type, NULL);
#line 405 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp0_ = dt;
#line 405 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp1_ = _g_date_time_ref0 (_tmp0_);
#line 405 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_g_date_time_unref0 (self->priv->d_datetime);
#line 405 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	self->priv->d_datetime = _tmp1_;
#line 403 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	return self;
#line 1293 "gitg-date.c"
}


GitgDate* gitg_date_new_for_date_time (GDateTime* dt) {
#line 403 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	return gitg_date_construct_for_date_time (GITG_TYPE_DATE, dt);
#line 1300 "gitg-date.c"
}


GDateTime* gitg_date_parse (const gchar* date, GError** error) {
	GDateTime* result = NULL;
	GitgDate* _tmp0_ = NULL;
	const gchar* _tmp1_ = NULL;
	GitgDate* _tmp2_ = NULL;
	GitgDate* _tmp3_ = NULL;
	GitgDate* _tmp4_ = NULL;
	GDateTime* _tmp5_ = NULL;
	GDateTime* _tmp6_ = NULL;
	GDateTime* _tmp7_ = NULL;
	GDateTime* _tmp8_ = NULL;
	GError * _inner_error_ = NULL;
#line 408 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	g_return_val_if_fail (date != NULL, NULL);
#line 410 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp1_ = date;
#line 410 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp2_ = gitg_date_new (_tmp1_, &_inner_error_);
#line 410 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp0_ = _tmp2_;
#line 410 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 410 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		g_propagate_error (error, _inner_error_);
#line 410 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		return NULL;
#line 1330 "gitg-date.c"
	}
#line 410 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp3_ = _tmp0_;
#line 410 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp0_ = NULL;
#line 410 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp4_ = _tmp3_;
#line 410 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp5_ = gitg_date_get_date (_tmp4_);
#line 410 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp6_ = _tmp5_;
#line 410 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp7_ = _g_date_time_ref0 (_tmp6_);
#line 410 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp8_ = _tmp7_;
#line 410 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_g_object_unref0 (_tmp4_);
#line 410 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	result = _tmp8_;
#line 410 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_g_object_unref0 (_tmp0_);
#line 410 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	return result;
#line 1354 "gitg-date.c"
}


const gchar* gitg_date_get_date_string (GitgDate* self) {
	const gchar* result;
	const gchar* _tmp0_ = NULL;
#line 266 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 266 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp0_ = self->priv->_date_string;
#line 266 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	result = _tmp0_;
#line 266 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	return result;
#line 1369 "gitg-date.c"
}


void gitg_date_set_date_string (GitgDate* self, const gchar* value) {
	const gchar* _tmp0_ = NULL;
	gchar* _tmp1_ = NULL;
#line 266 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	g_return_if_fail (self != NULL);
#line 266 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp0_ = value;
#line 266 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp1_ = g_strdup (_tmp0_);
#line 266 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_g_free0 (self->priv->_date_string);
#line 266 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	self->priv->_date_string = _tmp1_;
#line 266 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	g_object_notify ((GObject *) self, "date-string");
#line 1388 "gitg-date.c"
}


GDateTime* gitg_date_get_date (GitgDate* self) {
	GDateTime* result;
	GDateTime* _tmp0_ = NULL;
#line 271 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 271 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp0_ = self->priv->d_datetime;
#line 271 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	result = _tmp0_;
#line 271 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	return result;
#line 1403 "gitg-date.c"
}


static gpointer _g_settings_schema_source_ref0 (gpointer self) {
#line 314 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	return self ? g_settings_schema_source_ref (self) : NULL;
#line 1410 "gitg-date.c"
}


static gboolean gitg_date_get_is_24h (GitgDate* self) {
	gboolean result;
	gboolean _tmp0_ = FALSE;
	GSettings* _tmp1_ = NULL;
	GSettings* _tmp14_ = NULL;
	GSettings* _tmp15_ = NULL;
	gint _tmp16_ = 0;
#line 310 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 312 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp1_ = gitg_date_s_gnome_interface_settings;
#line 312 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	if (_tmp1_ == NULL) {
#line 1427 "gitg-date.c"
		gboolean _tmp2_ = FALSE;
#line 312 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp2_ = gitg_date_s_tried_gnome_interface_settings;
#line 312 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp0_ = !_tmp2_;
#line 1433 "gitg-date.c"
	} else {
#line 312 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp0_ = FALSE;
#line 1437 "gitg-date.c"
	}
#line 312 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	if (_tmp0_) {
#line 1441 "gitg-date.c"
		GSettingsSchemaSource* source = NULL;
		GSettingsSchemaSource* _tmp3_ = NULL;
		GSettingsSchemaSource* _tmp4_ = NULL;
		gchar* schema_id = NULL;
		gchar* _tmp5_ = NULL;
		gboolean _tmp6_ = FALSE;
		GSettingsSchemaSource* _tmp7_ = NULL;
#line 314 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp3_ = g_settings_schema_source_get_default ();
#line 314 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp4_ = _g_settings_schema_source_ref0 (_tmp3_);
#line 314 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		source = _tmp4_;
#line 316 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		gitg_date_s_tried_gnome_interface_settings = TRUE;
#line 318 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp5_ = g_strdup ("org.gnome.desktop.interface");
#line 318 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		schema_id = _tmp5_;
#line 320 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp7_ = source;
#line 320 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		if (_tmp7_ != NULL) {
#line 1465 "gitg-date.c"
			GSettingsSchemaSource* _tmp8_ = NULL;
			const gchar* _tmp9_ = NULL;
			GSettingsSchema* _tmp10_ = NULL;
			GSettingsSchema* _tmp11_ = NULL;
#line 320 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			_tmp8_ = source;
#line 320 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			_tmp9_ = schema_id;
#line 320 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			_tmp10_ = g_settings_schema_source_lookup (_tmp8_, _tmp9_, TRUE);
#line 320 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			_tmp11_ = _tmp10_;
#line 320 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			_tmp6_ = _tmp11_ != NULL;
#line 320 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			_g_settings_schema_unref0 (_tmp11_);
#line 1482 "gitg-date.c"
		} else {
#line 320 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			_tmp6_ = FALSE;
#line 1486 "gitg-date.c"
		}
#line 320 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		if (_tmp6_) {
#line 1490 "gitg-date.c"
			const gchar* _tmp12_ = NULL;
			GSettings* _tmp13_ = NULL;
#line 322 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			_tmp12_ = schema_id;
#line 322 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			_tmp13_ = g_settings_new (_tmp12_);
#line 322 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			_g_object_unref0 (gitg_date_s_gnome_interface_settings);
#line 322 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			gitg_date_s_gnome_interface_settings = _tmp13_;
#line 1501 "gitg-date.c"
		}
#line 312 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_free0 (schema_id);
#line 312 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_settings_schema_source_unref0 (source);
#line 1507 "gitg-date.c"
	}
#line 326 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp14_ = gitg_date_s_gnome_interface_settings;
#line 326 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	if (_tmp14_ == NULL) {
#line 328 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		result = FALSE;
#line 328 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		return result;
#line 1517 "gitg-date.c"
	}
#line 331 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp15_ = gitg_date_s_gnome_interface_settings;
#line 331 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp16_ = g_settings_get_enum (_tmp15_, "clock-format");
#line 331 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	result = _tmp16_ == ((gint) G_DESKTOP_CLOCK_FORMAT_24H);
#line 331 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	return result;
#line 1527 "gitg-date.c"
}


static const gchar* string_to_string (const gchar* self) {
	const gchar* result = NULL;
#line 1412 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
	g_return_val_if_fail (self != NULL, NULL);
#line 1413 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
	result = self;
#line 1413 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
	return result;
#line 1539 "gitg-date.c"
}


static void gitg_date_class_init (GitgDateClass * klass) {
	gchar* _tmp0_ = NULL;
	gchar* _tmp1_ = NULL;
	gchar* _tmp2_ = NULL;
	gchar* _tmp3_ = NULL;
	gchar* _tmp4_ = NULL;
	gchar* _tmp5_ = NULL;
	gchar* _tmp6_ = NULL;
	gchar* _tmp7_ = NULL;
	gchar* _tmp8_ = NULL;
	gchar* _tmp9_ = NULL;
	gchar* _tmp10_ = NULL;
	gchar* _tmp11_ = NULL;
	gchar** _tmp12_ = NULL;
	GError * _inner_error_ = NULL;
#line 28 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	gitg_date_parent_class = g_type_class_peek_parent (klass);
#line 28 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	g_type_class_add_private (klass, sizeof (GitgDatePrivate));
#line 28 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_gitg_date_get_property;
#line 28 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_gitg_date_set_property;
#line 28 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	G_OBJECT_CLASS (klass)->finalize = gitg_date_finalize;
#line 28 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), GITG_DATE_DATE_STRING, g_param_spec_string ("date-string", "date-string", "date-string", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE | G_PARAM_CONSTRUCT));
#line 28 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), GITG_DATE_DATE, g_param_spec_boxed ("date", "date", "date", G_TYPE_DATE_TIME, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
#line 37 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp0_ = g_strdup ("Jan");
#line 37 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp1_ = g_strdup ("Feb");
#line 37 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp2_ = g_strdup ("Mar");
#line 37 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp3_ = g_strdup ("Apr");
#line 37 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp4_ = g_strdup ("May");
#line 37 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp5_ = g_strdup ("Jun");
#line 37 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp6_ = g_strdup ("Jul");
#line 37 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp7_ = g_strdup ("Aug");
#line 37 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp8_ = g_strdup ("Sep");
#line 37 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp9_ = g_strdup ("Oct");
#line 37 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp10_ = g_strdup ("Nov");
#line 37 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp11_ = g_strdup ("Dec");
#line 37 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp12_ = g_new0 (gchar*, 13 + 1);
#line 37 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp12_[0] = NULL;
#line 37 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp12_[1] = _tmp0_;
#line 37 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp12_[2] = _tmp1_;
#line 37 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp12_[3] = _tmp2_;
#line 37 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp12_[4] = _tmp3_;
#line 37 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp12_[5] = _tmp4_;
#line 37 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp12_[6] = _tmp5_;
#line 37 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp12_[7] = _tmp6_;
#line 37 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp12_[8] = _tmp7_;
#line 37 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp12_[9] = _tmp8_;
#line 37 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp12_[10] = _tmp9_;
#line 37 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp12_[11] = _tmp10_;
#line 37 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_tmp12_[12] = _tmp11_;
#line 37 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	gitg_date_s_months = _tmp12_;
#line 37 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	gitg_date_s_months_length1 = 13;
#line 1628 "gitg-date.c"
	{
		GRegex* _tmp13_ = NULL;
		gchar* _tmp14_ = NULL;
		gchar* _tmp15_ = NULL;
		GRegex* _tmp16_ = NULL;
		GRegex* _tmp17_ = NULL;
		GRegex* _tmp18_ = NULL;
		GRegex* _tmp19_ = NULL;
		gchar* _tmp20_ = NULL;
		gchar* _tmp21_ = NULL;
		GRegex* _tmp22_ = NULL;
		GRegex* _tmp23_ = NULL;
		GRegex* _tmp24_ = NULL;
		GRegex* _tmp25_ = NULL;
		gchar* _tmp26_ = NULL;
		gchar* _tmp27_ = NULL;
		GRegex* _tmp28_ = NULL;
		GRegex* _tmp29_ = NULL;
		GRegex* _tmp30_ = NULL;
#line 58 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp14_ = g_strconcat ("^\n" \
"			(?<year>[0-9]{4})\n" \
"			(?:\n" \
"				[-.]?(?:\n" \
"					(?<month>[0-9]{2})\n" \
"					(?:\n" \
"						[-.]?(?<day>[0-9]{2})\n" \
"					)?\n" \
"				|\n" \
"					W(?<week>[0-9]{2})\n" \
"					(?:\n" \
"						[-.]?(?<weekday>[0-9])\n" \
"					)?\n" \
"				)\n" \
"				(?:\n" \
"					[T ](?<hour>[0-9]{2})\n" \
"					(?:\n" \
"						:?\n" \
"						(?<minute>[0-9]{2})\n" \
"						(?:\n" \
"							:?\n" \
"							(?<seconds>[0-9]{2})\n" \
"							(?<tz>\n" \
"								(?<tzutc>Z) |\n" \
"								[+-](?<tzhour>[0-9]{2})\n" \
"								(?:\n" \
"									:?\n" \
"									(?<tzminute>[0-9]{2})\n" \
"								)?\n" \
"							)?\n" \
"						)?\n" \
"					)?\n" \
"				)?\n" \
"			)?\n" \
"		", "$", NULL);
#line 58 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp15_ = _tmp14_;
#line 58 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp16_ = g_regex_new (_tmp15_, G_REGEX_EXTENDED, 0, &_inner_error_);
#line 58 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp17_ = _tmp16_;
#line 58 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_free0 (_tmp15_);
#line 58 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp13_ = _tmp17_;
#line 58 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 1662 "gitg-date.c"
			goto __catch32_g_error;
		}
#line 58 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp18_ = _tmp13_;
#line 58 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp13_ = NULL;
#line 58 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_regex_unref0 (gitg_date_s_iso8601);
#line 58 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		gitg_date_s_iso8601 = _tmp18_;
#line 94 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp20_ = g_strconcat ("^\n" \
"			(?:\n" \
"				[\\s]*(?<dayofweek>Mon|Tue|Wed|Thu|Fri|Sat|Sun)\n" \
"				,\n" \
"			)?\n" \
"			[\\s]*(?<day>[0-9]{1,2})\n" \
"			[\\s]+\n" \
"				(?<month>Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\n" \
"			[\\s]+\n" \
"				(?<year>[0-9]{4})\n" \
"			[\\s]+\n" \
"				(?<hour>[0-9]{2})\n" \
"				:\n" \
"				(?<minute>[0-9]{2})\n" \
"				(?:\n" \
"					:\n" \
"					(?<seconds>[0-9]{2})\n" \
"				)?\n" \
"			[\\s]+\n" \
"			(?<tz>\n" \
"				[+-]\n" \
"				(?<tzhour>[0-9]{2})\n" \
"				(?<tzminute>[0-9]{2})\n" \
"			)\n" \
"		", "$", NULL);
#line 94 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp21_ = _tmp20_;
#line 94 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp22_ = g_regex_new (_tmp21_, G_REGEX_EXTENDED, 0, &_inner_error_);
#line 94 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp23_ = _tmp22_;
#line 94 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_free0 (_tmp21_);
#line 94 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp19_ = _tmp23_;
#line 94 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 94 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			_g_regex_unref0 (_tmp13_);
#line 1689 "gitg-date.c"
			goto __catch32_g_error;
		}
#line 94 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp24_ = _tmp19_;
#line 94 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp19_ = NULL;
#line 94 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_regex_unref0 (gitg_date_s_rfc2822);
#line 94 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		gitg_date_s_rfc2822 = _tmp24_;
#line 120 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp26_ = g_strconcat ("^\n" \
"			@?\n" \
"			(?<timestamp>[0-9]+)\n" \
"			[ ](?<tz>\n" \
"				[+-](?<tzhour>[0-9]{2})\n" \
"				(?:\n" \
"					:?\n" \
"					(?<tzminute>[0-9]{2})?\n" \
"				)\n" \
"			)\n" \
"		", "$", NULL);
#line 120 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp27_ = _tmp26_;
#line 120 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp28_ = g_regex_new (_tmp27_, G_REGEX_EXTENDED, 0, &_inner_error_);
#line 120 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp29_ = _tmp28_;
#line 120 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_free0 (_tmp27_);
#line 120 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp25_ = _tmp29_;
#line 120 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 120 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			_g_regex_unref0 (_tmp19_);
#line 120 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
			_g_regex_unref0 (_tmp13_);
#line 1718 "gitg-date.c"
			goto __catch32_g_error;
		}
#line 120 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp30_ = _tmp25_;
#line 120 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp25_ = NULL;
#line 120 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_regex_unref0 (gitg_date_s_internal);
#line 120 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		gitg_date_s_internal = _tmp30_;
#line 55 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_regex_unref0 (_tmp25_);
#line 55 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_regex_unref0 (_tmp19_);
#line 55 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_regex_unref0 (_tmp13_);
#line 1735 "gitg-date.c"
	}
	goto __finally32;
	__catch32_g_error:
	{
		GError* e = NULL;
		GError* _tmp31_ = NULL;
		const gchar* _tmp32_ = NULL;
		const gchar* _tmp33_ = NULL;
		gchar* _tmp34_ = NULL;
		gchar* _tmp35_ = NULL;
#line 55 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		e = _inner_error_;
#line 55 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_inner_error_ = NULL;
#line 135 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp31_ = e;
#line 135 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp32_ = _tmp31_->message;
#line 135 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp33_ = string_to_string (_tmp32_);
#line 135 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp34_ = g_strconcat ("Failed to compile date regex: ", _tmp33_, NULL);
#line 135 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_tmp35_ = _tmp34_;
#line 135 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		g_warning ("gitg-date.vala:135: %s", _tmp35_);
#line 135 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_free0 (_tmp35_);
#line 55 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		_g_error_free0 (e);
#line 1766 "gitg-date.c"
	}
	__finally32:
#line 55 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 55 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 55 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		g_clear_error (&_inner_error_);
#line 1775 "gitg-date.c"
	}
}


static void gitg_date_g_initable_interface_init (GInitableIface * iface) {
#line 28 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	gitg_date_g_initable_parent_iface = g_type_interface_peek_parent (iface);
#line 28 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	iface->init = (gboolean (*)(GInitable*, GCancellable*, GError**)) gitg_date_real_init;
#line 1785 "gitg-date.c"
}


static void gitg_date_instance_init (GitgDate * self) {
#line 28 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	self->priv = GITG_DATE_GET_PRIVATE (self);
#line 1792 "gitg-date.c"
}


static void gitg_date_finalize (GObject* obj) {
	GitgDate * self;
#line 28 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, GITG_TYPE_DATE, GitgDate);
#line 262 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_g_date_time_unref0 (self->priv->d_datetime);
#line 264 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	_g_free0 (self->priv->_date_string);
#line 28 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	G_OBJECT_CLASS (gitg_date_parent_class)->finalize (obj);
#line 1806 "gitg-date.c"
}


GType gitg_date_get_type (void) {
	static volatile gsize gitg_date_type_id__volatile = 0;
	if (g_once_init_enter (&gitg_date_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (GitgDateClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) gitg_date_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (GitgDate), 0, (GInstanceInitFunc) gitg_date_instance_init, NULL };
		static const GInterfaceInfo g_initable_info = { (GInterfaceInitFunc) gitg_date_g_initable_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
		GType gitg_date_type_id;
		gitg_date_type_id = g_type_register_static (G_TYPE_OBJECT, "GitgDate", &g_define_type_info, 0);
		g_type_add_interface_static (gitg_date_type_id, g_initable_get_type (), &g_initable_info);
		g_once_init_leave (&gitg_date_type_id__volatile, gitg_date_type_id);
	}
	return gitg_date_type_id__volatile;
}


static void _vala_gitg_date_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) {
	GitgDate * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, GITG_TYPE_DATE, GitgDate);
#line 28 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	switch (property_id) {
#line 28 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		case GITG_DATE_DATE_STRING:
#line 28 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		g_value_set_string (value, gitg_date_get_date_string (self));
#line 28 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		break;
#line 28 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		case GITG_DATE_DATE:
#line 28 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		g_value_set_boxed (value, gitg_date_get_date (self));
#line 28 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		break;
#line 1841 "gitg-date.c"
		default:
#line 28 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 28 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		break;
#line 1847 "gitg-date.c"
	}
}


static void _vala_gitg_date_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec) {
	GitgDate * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, GITG_TYPE_DATE, GitgDate);
#line 28 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
	switch (property_id) {
#line 28 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		case GITG_DATE_DATE_STRING:
#line 28 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		gitg_date_set_date_string (self, g_value_get_string (value));
#line 28 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		break;
#line 1863 "gitg-date.c"
		default:
#line 28 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 28 "/home/jesse/dev/gitg/libgitg/gitg-date.vala"
		break;
#line 1869 "gitg-date.c"
	}
}



