diff options
Diffstat (limited to 'gck/gck.h')
-rw-r--r-- | gck/gck.h | 29 |
1 files changed, 23 insertions, 6 deletions
@@ -1300,17 +1300,34 @@ enum { GCK_URI_BAD_SYNTAX = 3 }; +typedef enum { + GCK_URI_PARSE_MODULE = (1 << 1), + GCK_URI_PARSE_TOKEN = (1 << 2) | GCK_URI_PARSE_MODULE, + GCK_URI_PARSE_OBJECT = (1 << 3) | GCK_URI_PARSE_TOKEN, + GCK_URI_PARSE_ANY = 0xFFFFFFFF, +} GckUriParseFlags; + +typedef struct _GckUriInfo { + gboolean any_unrecognized; + GckModuleInfo *module_info; + GckTokenInfo *token_info; + GckAttributes *attributes; + + /*< private >*/ + gpointer dummy[4]; +} GckUriInfo; + #define GCK_URI_ERROR (gck_uri_get_error_quark ()) GQuark gck_uri_get_error_quark (void); -gchar* gck_uri_build (GckTokenInfo *token, - GckAttributes *attrs); +gchar* gck_uri_build (GckUriInfo *uri_info); -gboolean gck_uri_parse (const gchar *uri, - GckTokenInfo **token, - GckAttributes **attrs, - GError **err); +GckUriInfo* gck_uri_parse (const gchar *uri, + GckUriParseFlags flags, + GError **error); + +void gck_uri_info_free (GckUriInfo *uri_info); G_END_DECLS |