#include "meson-sample2.h"

struct _MesonSample2
{
  GObject parent_instance;
};

G_DEFINE_TYPE (MesonSample2, meson_sample2, G_TYPE_OBJECT)

/**
 * meson_sample2_new:
 *
 * Allocates a new #MesonSample2.
 *
 * Returns: (transfer full): a #MesonSample2.
 */
MesonSample2 *
meson_sample2_new (void)
{
  return g_object_new (MESON_TYPE_SAMPLE2, NULL);
}

static void
meson_sample2_class_init (MesonSample2Class *klass)
{
}

static void
meson_sample2_init (MesonSample2 *self)
{
}

/**
 * meson_sample2_print_message:
 * @self: a #MesonSample2.
 *
 * Prints Hello.
 *
 * Returns: Nothing.
 */
void
meson_sample2_print_message (MesonSample2 *self)
{
  g_print ("Message: Hello\n");
}
