/* * Copyright © 2013 Canonical Limited * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2 of the licence, or (at your option) any later version. * * This library 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 * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. * * Author: Ryan Lortie */ #ifndef __G_MARKUP_READER_H__ #define __G_MARKUP_READER_H__ #if !defined (__GIO_GIO_H_INSIDE__) && !defined (GIO_COMPILATION) #error "Only can be included directly." #endif #include G_BEGIN_DECLS #define G_TYPE_MARKUP_READER (g_markup_reader_get_type ()) #define G_MARKUP_READER(inst) (G_TYPE_CHECK_INSTANCE_CAST ((inst), \ G_TYPE_MARKUP_READER, GMarkupReader)) #define G_IS_MARKUP_READER(inst) (G_TYPE_CHECK_INSTANCE_TYPE ((inst), \ G_TYPE_MARKUP_READER)) typedef struct _GMarkupReader GMarkupReader; GLIB_AVAILABLE_IN_2_42 GType g_markup_reader_get_type (void); GLIB_AVAILABLE_IN_2_42 GMarkupReader * g_markup_reader_new (GInputStream *stream, GMarkupParseFlags flags); GLIB_AVAILABLE_IN_2_42 gboolean g_markup_reader_advance (GMarkupReader *reader, GCancellable *cancellable, GError **error); GLIB_AVAILABLE_IN_2_42 gboolean g_markup_reader_advance_nonblocking (GMarkupReader *reader, GCancellable *cancellable, GError **error); GLIB_AVAILABLE_IN_2_42 void g_markup_reader_advance_async (GMarkupReader *reader, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); GLIB_AVAILABLE_IN_2_42 gboolean g_markup_reader_advance_finish (GMarkupReader *reader, GAsyncResult *result, GError **error); GLIB_AVAILABLE_IN_2_42 gboolean g_markup_reader_is_eof (GMarkupReader *reader); GLIB_AVAILABLE_IN_2_42 gboolean g_markup_reader_is_start_element (GMarkupReader *reader, const gchar *element_name); GLIB_AVAILABLE_IN_2_42 gboolean g_markup_reader_is_end_element (GMarkupReader *reader); GLIB_AVAILABLE_IN_2_42 gboolean g_markup_reader_is_passthrough (GMarkupReader *reader); GLIB_AVAILABLE_IN_2_42 gboolean g_markup_reader_is_text (GMarkupReader *reader); GLIB_AVAILABLE_IN_2_42 gboolean g_markup_reader_is_whitespace (GMarkupReader *reader); GLIB_AVAILABLE_IN_2_42 const gchar * g_markup_reader_get_element_name (GMarkupReader *reader); GLIB_AVAILABLE_IN_2_42 void g_markup_reader_get_attributes (GMarkupReader *reader, const gchar * const **attribute_names, const gchar * const **attribute_values); GLIB_AVAILABLE_IN_2_42 gboolean g_markup_reader_collect_attributes (GMarkupReader *reader, GError **error, GMarkupCollectType first_type, const gchar *first_name, ...); GLIB_AVAILABLE_IN_2_42 gboolean g_markup_reader_collect_elements (GMarkupReader *reader, GCancellable *cancellable, gpointer user_data, GError **error, const gchar *first_name, ...) G_GNUC_NULL_TERMINATED; GLIB_AVAILABLE_IN_2_42 GBytes * g_markup_reader_get_content (GMarkupReader *reader); GLIB_AVAILABLE_IN_2_42 gboolean g_markup_reader_unexpected (GMarkupReader *reader, GError **error); GLIB_AVAILABLE_IN_2_42 gboolean g_markup_reader_expect_end (GMarkupReader *reader, GCancellable *cancellable, GError **error); GLIB_AVAILABLE_IN_2_42 void g_markup_reader_set_error (GMarkupReader *reader, GError **error, GQuark domain, gint code, const gchar *format, ...); GLIB_AVAILABLE_IN_2_42 gchar * g_markup_reader_collect_text (GMarkupReader *reader, GCancellable *cancellable, GError **error); G_END_DECLS #endif /* __G_MARKUP_READER_H__ */