gvariant-private.h 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. /*
  2. *
  3. * Embedded Linux library
  4. *
  5. * Copyright (C) 2011-2014 Intel Corporation. All rights reserved.
  6. *
  7. * This library is free software; you can redistribute it and/or
  8. * modify it under the terms of the GNU Lesser General Public
  9. * License as published by the Free Software Foundation; either
  10. * version 2.1 of the License, or (at your option) any later version.
  11. *
  12. * This library is distributed in the hope that it will be useful,
  13. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  14. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  15. * Lesser General Public License for more details.
  16. *
  17. * You should have received a copy of the GNU Lesser General Public
  18. * License along with this library; if not, write to the Free Software
  19. * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
  20. *
  21. */
  22. struct l_dbus_message_iter;
  23. struct dbus_builder;
  24. bool _gvariant_iter_init(struct l_dbus_message_iter *iter,
  25. struct l_dbus_message *message,
  26. const char *sig_start, const char *sig_end,
  27. const void *data, size_t len);
  28. bool _gvariant_iter_next_entry_basic(struct l_dbus_message_iter *iter,
  29. char type, void *out_p);
  30. bool _gvariant_iter_enter_struct(struct l_dbus_message_iter *iter,
  31. struct l_dbus_message_iter *structure);
  32. bool _gvariant_iter_enter_variant(struct l_dbus_message_iter *iter,
  33. struct l_dbus_message_iter *variant);
  34. bool _gvariant_iter_enter_array(struct l_dbus_message_iter *iter,
  35. struct l_dbus_message_iter *array);
  36. bool _gvariant_iter_skip_entry(struct l_dbus_message_iter *iter);
  37. bool _gvariant_valid_signature(const char *sig);
  38. int _gvariant_get_alignment(const char *signature);
  39. bool _gvariant_is_fixed_size(const char *signature);
  40. int _gvariant_get_fixed_size(const char *signature);
  41. int _gvariant_num_children(const char *sig);
  42. struct dbus_builder *_gvariant_builder_new(void *body, size_t body_size);
  43. void _gvariant_builder_free(struct dbus_builder *builder);
  44. bool _gvariant_builder_append_basic(struct dbus_builder *builder,
  45. char type, const void *value);
  46. bool _gvariant_builder_mark(struct dbus_builder *builder);
  47. bool _gvariant_builder_rewind(struct dbus_builder *builder);
  48. char *_gvariant_builder_finish(struct dbus_builder *builder,
  49. void **body, size_t *body_size);
  50. bool _gvariant_builder_enter_struct(struct dbus_builder *builder,
  51. const char *signature);
  52. bool _gvariant_builder_leave_struct(struct dbus_builder *builder);
  53. bool _gvariant_builder_enter_dict(struct dbus_builder *builder,
  54. const char *signature);
  55. bool _gvariant_builder_leave_dict(struct dbus_builder *builder);
  56. bool _gvariant_builder_enter_variant(struct dbus_builder *builder,
  57. const char *signature);
  58. bool _gvariant_builder_leave_variant(struct dbus_builder *builder);
  59. bool _gvariant_builder_enter_array(struct dbus_builder *builder,
  60. const char *signature);
  61. bool _gvariant_builder_leave_array(struct dbus_builder *builder);
  62. size_t _gvariant_message_finalize(size_t header_end,
  63. void *body, size_t body_size,
  64. const char *signature);