Advertisement
Guest User

Untitled

a guest
Jun 30th, 2019
176
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Vala 2.59 KB | None | 0 0
  1. /* template_struct.c generated by valac 0.44.5, the Vala compiler
  2.  * generated from template_struct.vala, do not modify */
  3.  
  4. #include <glib-object.h>
  5. #include <string.h>
  6. #include <glib.h>
  7. #include <stdlib.h>
  8.  
  9. #define TYPE_PAIR (pair_get_type ())
  10. typedef struct _Pair Pair;
  11. #define _g_free0(var) (var = (g_free (var), NULL))
  12.  
  13. struct _Pair {
  14.     gpointer v0;
  15.     gpointer v1;
  16. };
  17.  
  18. GType pair_get_type (void) G_GNUC_CONST;
  19. Pair* pair_dup (const Pair* self);
  20. void pair_free (Pair* self);
  21. void pair_copy (const Pair* self,
  22.                 Pair* dest);
  23. void pair_destroy (Pair* self);
  24. void pair_init (Pair *self,
  25.                 gconstpointer v0,
  26.                 gconstpointer v1);
  27. void pair_init_empty (Pair *self);
  28. gpointer pair_first (Pair *self);
  29. gpointer pair_second (Pair *self);
  30. gint _vala_main (gchar** args,
  31.                  gint args_length1);
  32.  
  33. void
  34. pair_init (Pair *self,
  35.            gconstpointer v0,
  36.            gconstpointer v1)
  37. {
  38.     memset (self, 0, sizeof (Pair));
  39.     (*self).v0 = v0;
  40.     (*self).v1 = v1;
  41. }
  42.  
  43. void
  44. pair_init_empty (Pair *self)
  45. {
  46.     memset (self, 0, sizeof (Pair));
  47. }
  48.  
  49. gpointer
  50. pair_first (Pair *self)
  51. {
  52.     gpointer result = NULL;
  53.     gconstpointer _tmp0_;
  54.     _tmp0_ = (*self).v0;
  55.     result = _tmp0_;
  56.     return result;
  57. }
  58.  
  59. gpointer
  60. pair_second (Pair *self)
  61. {
  62.     gpointer result = NULL;
  63.     gconstpointer _tmp0_;
  64.     _tmp0_ = (*self).v1;
  65.     result = _tmp0_;
  66.     return result;
  67. }
  68.  
  69. void
  70. pair_copy (const Pair* self,
  71.            Pair* dest)
  72. {
  73.     gconstpointer _tmp0_;
  74.     gconstpointer _tmp1_;
  75.     _tmp0_ = (*self).v0;
  76.     (*dest).v0 = _tmp0_;
  77.     _tmp1_ = (*self).v1;
  78.     (*dest).v1 = _tmp1_;
  79. }
  80.  
  81. void
  82. pair_destroy (Pair* self)
  83. {
  84. }
  85.  
  86. Pair*
  87. pair_dup (const Pair* self)
  88. {
  89.     Pair* dup;
  90.     dup = g_new0 (Pair, 1);
  91.     pair_copy (self, dup);
  92.     return dup;
  93. }
  94.  
  95. void
  96. pair_free (Pair* self)
  97. {
  98.     pair_destroy (self);
  99.     g_free (self);
  100. }
  101.  
  102. GType
  103. pair_get_type (void)
  104. {
  105.     static volatile gsize pair_type_id__volatile = 0;
  106.     if (g_once_init_enter (&pair_type_id__volatile)) {
  107.         GType pair_type_id;
  108.         pair_type_id = g_boxed_type_register_static ("Pair", (GBoxedCopyFunc) pair_dup, (GBoxedFreeFunc) pair_free);
  109.         g_once_init_leave (&pair_type_id__volatile, pair_type_id);
  110.     }
  111.     return pair_type_id__volatile;
  112. }
  113.  
  114. gint
  115. _vala_main (gchar** args,
  116.             gint args_length1)
  117. {
  118.     gint result = 0;
  119.     Pair b = {0};
  120.     gchar* s = NULL;
  121.     gpointer _tmp0_;
  122.     pair_init (&b, (gpointer) ((gintptr) 4), "test");
  123.     _tmp0_ = pair_second (&b);
  124.     s = (gchar*) _tmp0_;
  125.     result = 0;
  126.     _g_free0 (s);
  127.     pair_destroy (&b);
  128.     return result;
  129. }
  130.  
  131. int
  132. main (int argc,
  133.       char ** argv)
  134. {
  135.     return _vala_main (argv, argc);
  136. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement