soup-value-utils.h 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. /* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
  2. /*
  3. * Copyright (C) 2007 Red Hat, Inc.
  4. */
  5. #ifndef SOUP_VALUE_UTILS_H
  6. #define SOUP_VALUE_UTILS_H 1
  7. #include <libsoup/soup-types.h>
  8. #include <gobject/gvaluecollector.h>
  9. G_BEGIN_DECLS
  10. #define SOUP_VALUE_SETV(val, type, args) \
  11. G_STMT_START { \
  12. char *setv_error = NULL; \
  13. \
  14. memset (val, 0, sizeof (GValue)); \
  15. g_value_init (val, type); \
  16. G_VALUE_COLLECT (val, args, G_VALUE_NOCOPY_CONTENTS, &setv_error); \
  17. g_free (setv_error); \
  18. } G_STMT_END
  19. #define SOUP_VALUE_GETV(val, type, args) \
  20. G_STMT_START { \
  21. char *getv_error = NULL; \
  22. \
  23. G_VALUE_LCOPY (val, args, G_VALUE_NOCOPY_CONTENTS, &getv_error); \
  24. g_free (getv_error); \
  25. } G_STMT_END
  26. SOUP_AVAILABLE_IN_2_4
  27. SOUP_DEPRECATED_IN_2_52
  28. GHashTable *soup_value_hash_new (void);
  29. SOUP_AVAILABLE_IN_2_4
  30. SOUP_DEPRECATED_IN_2_52
  31. GHashTable *soup_value_hash_new_with_vals (const char *first_key,
  32. ...) G_GNUC_NULL_TERMINATED;
  33. SOUP_AVAILABLE_IN_2_4
  34. SOUP_DEPRECATED_IN_2_52
  35. void soup_value_hash_insert_value (GHashTable *hash,
  36. const char *key,
  37. GValue *value);
  38. SOUP_AVAILABLE_IN_2_4
  39. SOUP_DEPRECATED_IN_2_52
  40. void soup_value_hash_insert (GHashTable *hash,
  41. const char *key,
  42. GType type,
  43. ...);
  44. SOUP_AVAILABLE_IN_2_4
  45. SOUP_DEPRECATED_IN_2_52
  46. void soup_value_hash_insert_vals (GHashTable *hash,
  47. const char *first_key,
  48. ...) G_GNUC_NULL_TERMINATED;
  49. SOUP_AVAILABLE_IN_2_4
  50. SOUP_DEPRECATED_IN_2_52
  51. gboolean soup_value_hash_lookup (GHashTable *hash,
  52. const char *key,
  53. GType type,
  54. ...);
  55. SOUP_AVAILABLE_IN_2_4
  56. SOUP_DEPRECATED_IN_2_52
  57. gboolean soup_value_hash_lookup_vals (GHashTable *hash,
  58. const char *first_key,
  59. ...) G_GNUC_NULL_TERMINATED;
  60. SOUP_AVAILABLE_IN_2_4
  61. SOUP_DEPRECATED_IN_2_52
  62. GValueArray *soup_value_array_from_args (va_list args);
  63. SOUP_AVAILABLE_IN_2_4
  64. SOUP_DEPRECATED_IN_2_52
  65. gboolean soup_value_array_to_args (GValueArray *array,
  66. va_list args);
  67. SOUP_AVAILABLE_IN_2_4
  68. SOUP_DEPRECATED_IN_2_52
  69. GValueArray *soup_value_array_new (void);
  70. SOUP_AVAILABLE_IN_2_4
  71. SOUP_DEPRECATED_IN_2_52
  72. GValueArray *soup_value_array_new_with_vals (GType first_type,
  73. ...) G_GNUC_NULL_TERMINATED;
  74. SOUP_AVAILABLE_IN_2_4
  75. SOUP_DEPRECATED_IN_2_52
  76. void soup_value_array_insert (GValueArray *array,
  77. guint index_,
  78. GType type,
  79. ...);
  80. SOUP_AVAILABLE_IN_2_4
  81. SOUP_DEPRECATED_IN_2_52
  82. void soup_value_array_append (GValueArray *array,
  83. GType type,
  84. ...);
  85. SOUP_AVAILABLE_IN_2_4
  86. SOUP_DEPRECATED_IN_2_52
  87. void soup_value_array_append_vals (GValueArray *array,
  88. GType first_type,
  89. ...) G_GNUC_NULL_TERMINATED;
  90. SOUP_AVAILABLE_IN_2_4
  91. SOUP_DEPRECATED_IN_2_52
  92. gboolean soup_value_array_get_nth (GValueArray *array,
  93. guint index_,
  94. GType type,
  95. ...);
  96. SOUP_AVAILABLE_IN_2_4
  97. SOUP_DEPRECATED_IN_2_52
  98. GType soup_byte_array_get_type (void);
  99. #define SOUP_TYPE_BYTE_ARRAY (soup_byte_array_get_type ())
  100. G_END_DECLS
  101. #endif /* SOUP_VALUE_UTILS_H */