/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ /* * Authors: * Christopher James Lahey <clahey@umich.edu> * * Copyright (C) 2000 Ximian, Inc. * Copyright (C) 1999 The Free Software Foundation */ #include <config.h> #include "e-iterator.h" #include "e-util-marshal.h" static void e_iterator_init (EIterator *card); static void e_iterator_class_init (EIteratorClass *klass); #define PARENT_TYPE G_TYPE_OBJECT static GObjectClass *parent_class; enum { INVALIDATE, LAST_SIGNAL }; static guint e_iterator_signals [LAST_SIGNAL] = { 0, }; /** * e_iterator_get_type: * @void: * * Registers the &EIterator class if necessary, and returns the type ID * associated to it. * * Return value: The type ID of the &EIterator class. **/ GType e_iterator_get_type (void) { static GType type = 0; if (! type) { GTypeInfo info = { sizeof (EIteratorClass), NULL, /* base_class_init */ NULL, /* base_class_finalize */ (GClassInitFunc) e_iterator_class_init, NULL, /* class_finalize */ NULL, /* class_data */ sizeof (EIterator), 0, /* n_preallocs */ (GInstanceInitFunc) e_iterator_init }; type = g_type_register_static (PARENT_TYPE, "EIterator", &info, 0); } return type; } static void e_iterator_class_init (EIteratorClass *klass) { GObjectClass *object_class; object_class = G_OBJECT_CLASS(klass); parent_class = g_type_class_ref (PARENT_TYPE); e_iterator_signals [INVALIDATE] = g_signal_new ("invalidate", G_OBJECT_CLASS_TYPE (object_class), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (EIteratorClass, invalidate), NULL, NULL, e_util_marshal_NONE__NONE, /* XXX need a new marshaller here */ G_TYPE_NONE, 0); klass->invalidate = NULL; klass->get = NULL; klass->reset = NULL; klass->last = NULL; klass->next = NULL; klass->prev = NULL; klass->delete = NULL; klass->insert = NULL; klass->set = NULL; klass->is_valid = NULL; } /** * e_iterator_init: */ static void e_iterator_init (EIterator *card) { } /* * Virtual functions: */ const void * e_iterator_get (EIterator *iterator) { if (E_ITERATOR_GET_CLASS(iterator)->get) return E_ITERATOR_GET_CLASS(iterator)->get(iterator); else return NULL; } void e_iterator_reset (EIterator *iterator) { if (E_ITERATOR_GET_CLASS(iterator)->reset) E_ITERATOR_GET_CLASS(iterator)->reset(iterator); } void e_iterator_last (EIterator *iterator) { if (E_ITERATOR_GET_CLASS(iterator)->last) E_ITERATOR_GET_CLASS(iterator)->last(iterator); } gboolean e_iterator_next (EIterator *iterator) { if (E_ITERATOR_GET_CLASS(iterator)->next) return E_ITERATOR_GET_CLASS(iterator)->next(iterator); else return FALSE; } gboolean e_iterator_prev (EIterator *iterator) { if (E_ITERATOR_GET_CLASS(iterator)->prev) return E_ITERATOR_GET_CLASS(iterator)->prev(iterator); else return FALSE; } void e_iterator_delete (EIterator *iterator) { if (E_ITERATOR_GET_CLASS(iterator)->delete) E_ITERATOR_GET_CLASS(iterator)->delete(iterator); } void e_iterator_insert (EIterator *iterator, const void *object, gboolean before) { if (E_ITERATOR_GET_CLASS(iterator)->insert) E_ITERATOR_GET_CLASS(iterator)->insert(iterator, object, before); } void e_iterator_set (EIterator *iterator, const void *object) { if (E_ITERATOR_GET_CLASS(iterator)->set) E_ITERATOR_GET_CLASS(iterator)->set(iterator, object); } gboolean e_iterator_is_valid (EIterator *iterator) { if (E_ITERATOR_GET_CLASS(iterator)->is_valid) return E_ITERATOR_GET_CLASS(iterator)->is_valid(iterator); else return FALSE; } void e_iterator_invalidate (EIterator *iterator) { g_return_if_fail (iterator != NULL); g_return_if_fail (E_IS_ITERATOR (iterator)); g_signal_emit (iterator, e_iterator_signals [INVALIDATE], 0); } d_yarn/devel/electron6/files/node-fetch-2.6.1</option> <option value='dependabot/npm_and_yarn/devel/electron6/files/serve-10.1.2'>dependabot/npm_and_yarn/devel/electron6/files/serve-10.1.2</option> <option value='gnome-3.22'>gnome-3.22</option> <option value='gnome-3.24'>gnome-3.24</option> <option value='gnome-3.26'>gnome-3.26</option> <option value='gnome-3.28'>gnome-3.28</option> <option value='gnome-3.32'>gnome-3.32</option> <option value='gnome-3.36'>gnome-3.36</option> <option value='gstreamer'>gstreamer</option> <option value='gstreamer-1.16'>gstreamer-1.16</option> <option value='gstreamer0.10-removal'>gstreamer0.10-removal</option> <option value='main'>main</option> <option value='master'>master</option> <option value='mate-1.16'>mate-1.16</option> <option value='mate-1.18' selected='selected'>mate-1.18</option> <option value='mate-1.20'>mate-1.20</option> <option value='mate-1.22'>mate-1.22</option> </select> <input type='submit' value='switch'/></form></td></tr> <tr><td class='sub'>FreeBSD GNOME current development ports (https://github.com/freebsd/freebsd-ports-gnome)</td><td class='sub right'></td></tr></table> <table class='tabs'><tr><td> <a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/about/?h=mate-1.18'>about</a><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/?h=mate-1.18'>summary</a><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/refs/?h=mate-1.18&id=b24952bc1b5b86a8faa4e3ff77b0f8a0a67f8720'>refs</a><a class='active' href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/log/math/p5-Math-GSL?h=mate-1.18'>log</a><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/tree/math/p5-Math-GSL?h=mate-1.18&id=b24952bc1b5b86a8faa4e3ff77b0f8a0a67f8720'>tree</a><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/commit/math/p5-Math-GSL?h=mate-1.18&id=b24952bc1b5b86a8faa4e3ff77b0f8a0a67f8720'>commit</a><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/diff/math/p5-Math-GSL?h=mate-1.18&id=b24952bc1b5b86a8faa4e3ff77b0f8a0a67f8720'>diff</a><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/stats/math/p5-Math-GSL?h=mate-1.18'>stats</a></td><td class='form'><form class='right' method='get' action='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/log/math/p5-Math-GSL'> <input type='hidden' name='h' value='mate-1.18'/><input type='hidden' name='id' value='b24952bc1b5b86a8faa4e3ff77b0f8a0a67f8720'/><select name='qt'> <option value='grep'>log msg</option> <option value='author'>author</option> <option value='committer'>committer</option> <option value='range'>range</option> </select> <input class='txt' type='search' size='10' name='q' value=''/> <input type='submit' value='search'/> </form> </td></tr></table> <div class='path'>path: <a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/log/?h=mate-1.18&id=b24952bc1b5b86a8faa4e3ff77b0f8a0a67f8720'>root</a>/<a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/log/math?h=mate-1.18&id=b24952bc1b5b86a8faa4e3ff77b0f8a0a67f8720'>math</a>/<a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/log/math/p5-Math-GSL?h=mate-1.18&id=b24952bc1b5b86a8faa4e3ff77b0f8a0a67f8720'>p5-Math-GSL</a></div><div class='content'><table class='list nowrap'><tr class='nohover'><th></th><th class='left'>Commit message (<a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/log/math/p5-Math-GSL?h=mate-1.18&id=b24952bc1b5b86a8faa4e3ff77b0f8a0a67f8720&showmsg=1'>Expand</a>)</th><th class='left'>Author</th><th class='left'>Age</th><th class='left'>Files</th><th class='left'>Lines</th></tr> <tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/commit/math/p5-Math-GSL?h=mate-1.18&id=feafe637a586a81fbc65a23660b6e82c87d90f07'>Replace ugly "@unexec rmdir %D... 2>/dev/null || true" with @dirrmtry</a></td><td>edwin</td><td><span title='2006-01-22 10:30:01 +0800'>2006-01-22</span></td><td>1</td><td><span class='deletions'>-2</span>/<span class='insertions'>+2</span></td></tr> <tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/commit/math/p5-Math-GSL?h=mate-1.18&id=f078244c2e0713b6ddf752c020a920c3a3bb1eca'>- Add SHA256</a></td><td>pav</td><td><span title='2005-11-25 23:48:16 +0800'>2005-11-25</span></td><td>1</td><td><span class='deletions'>-0</span>/<span class='insertions'>+1</span></td></tr> <tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/commit/math/p5-Math-GSL?h=mate-1.18&id=445caf133171b3014582a069956b5c285d6754e2'>Let the IGNORE message make a bit more sense and change it from:</a></td><td>erwin</td><td><span title='2005-11-01 02:24:21 +0800'>2005-11-01</span></td><td>1</td><td><span class='deletions'>-1</span>/<span class='insertions'>+1</span></td></tr> <tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/commit/math/p5-Math-GSL?h=mate-1.18&id=78ae72b568ee1077428eabb4313ee80d323732e6'>Bump PORTREVISION after the libgsl update.</a></td><td>jylefort</td><td><span title='2005-05-03 04:46:12 +0800'>2005-05-03</span></td><td>1</td><td><span class='deletions'>-0</span>/<span class='insertions'>+1</span></td></tr> <tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/commit/math/p5-Math-GSL?h=mate-1.18&id=3b50f68cdd2ccdc97e17d467006832515efd6690'>Chase the libgsl update.</a></td><td>jylefort</td><td><span title='2005-05-02 21:00:18 +0800'>2005-05-02</span>