grim/gplate

apparently the .SUFFIXES target is supposed to be a variable now..
/*
* Copyright (C) 2007-2008 Gary Kramlich <grim@reaperworld.com>
*
* This program 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.
*
* This program 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
* this program; if not, write to the Free Software Foundation, Inc., 51
* Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
#ifndef GPLATE_ITERATOR_H
#define GPLATE_ITERATOR_H
#include <glib.h>
#include <glib-object.h>
#define GPLATE_TYPE_ITERATOR (gplate_iterator_get_gtype())
#define GPLATE_ITERATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), GPLATE_TYPE_ITERATOR, GPlateIterator))
#define GPLATE_IS_ITERATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), GPLATE_TYPE_ITERATOR))
#define GPLATE_ITERATOR_GET_IFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE((obj), GPLATE_TYPE_ITERATOR, GPlateIteratorIface))
typedef struct _GPlateIterator GPlateIterator;
typedef struct _GPlateIteratorIface GPlateIteratorIface;
#include <gplate/gplate-variable.h>
struct _GPlateIteratorIface {
GTypeInterface gparent;
gboolean (*has_next)(const GPlateIterator *iter);
GPlateVariable *(*next)(GPlateIterator *iter);
void (*_gplate_reserved1)(void);
void (*_gplate_reserved2)(void);
void (*_gplate_reserved3)(void);
void (*_gplate_reserved4)(void);
};
G_BEGIN_DECLS
GType gplate_iterator_get_gtype(void);
gboolean gplate_iterator_has_next(const GPlateIterator *iter);
GPlateVariable *gplate_iterator_next(GPlateIterator *iter);
G_END_DECLS
#endif /* GPLATE_ITERATOR_H */