3 * Copyright (C) 2009 Didier Villevalois, Maciej Piechotka
4 * Copyright (C) 2011 Maciej Piechotka
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
21 * Maciej Piechotka <uzytkownik2@gmail.com>
25 * A bi-directional Map iterator.
28 public interface Gee.BidirMapIterator<K,V> : Gee.MapIterator<K,V> {
30 * Rewinds to the previous element in the iteration.
32 * @return `true` if the iterator has a previous element
34 public abstract bool previous ();
37 * Checks whether there is a previous element in the iteration.
39 * @return `true` if the iterator has a previous element
41 public abstract bool has_previous ();
44 * Goes back to the first element.
46 * @return `true` if the iterator has a first element
48 public abstract bool first ();
51 * Advances to the last element in the iteration.
53 * @return `true` if the iterator has a last element
55 public abstract bool last ();