blob: 021274b83b1c1582620d468b4e372a23686689c7 [file] [log] [blame]
/*
* 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 <desrt@desrt.ca>
*/
#ifndef __G_MARKUP_READER_H__
#define __G_MARKUP_READER_H__
#if !defined (__GIO_GIO_H_INSIDE__) && !defined (GIO_COMPILATION)
#error "Only <gio/gio.h> can be included directly."
#endif
#include <gio/giotypes.h>
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__ */