You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

json_object_private.h 1.0 kB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. /*
  2. * $Id: json_object_private.h,v 1.4 2006/01/26 02:16:28 mclark Exp $
  3. *
  4. * Copyright (c) 2004, 2005 Metaparadigm Pte. Ltd.
  5. * Michael Clark <michael@metaparadigm.com>
  6. *
  7. * This library is free software; you can redistribute it and/or modify
  8. * it under the terms of the MIT license. See COPYING for details.
  9. *
  10. */
  11. #ifndef _json_object_private_h_
  12. #define _json_object_private_h_
  13. #ifdef __cplusplus
  14. extern "C" {
  15. #endif
  16. typedef void (json_object_delete_fn)(struct json_object *o);
  17. typedef int (json_object_to_json_string_fn)(struct json_object *o,
  18. struct printbuf *pb);
  19. struct json_object
  20. {
  21. enum json_type o_type;
  22. json_object_delete_fn *_delete;
  23. json_object_to_json_string_fn *_to_json_string;
  24. int _ref_count;
  25. struct printbuf *_pb;
  26. union data {
  27. boolean c_boolean;
  28. double c_double;
  29. int64_t c_int64;
  30. struct lh_table *c_object;
  31. struct array_list *c_array;
  32. struct {
  33. char *str;
  34. int len;
  35. } c_string;
  36. } o;
  37. };
  38. #ifdef __cplusplus
  39. }
  40. #endif
  41. #endif