Glib::PatternSpec::PatternSpec(const Glib::ustring&) (struct PatternSpec * const this, const struct ustring & pattern)
{
  const char * D.32244;
  struct GPatternSpec * D.32245;

  D.32244 = Glib::ustring::c_str (pattern);
  D.32245 = g_pattern_spec_new (D.32244);
  this->gobject_ = D.32245;
}


Glib::PatternSpec::PatternSpec(GPatternSpec*) (struct PatternSpec * const this, struct GPatternSpec * gobject)
{
  this->gobject_ = gobject;
}


Glib::PatternSpec::~PatternSpec() (struct PatternSpec * const this)
{
  struct GPatternSpec * D.32248;

  {
    try
      {
        D.32248 = this->gobject_;
        g_pattern_spec_free (D.32248);
      }
    finally
      {
        *this = {CLOBBER};
      }
  }
  <D.32126>:
}


bool Glib::PatternSpec::match(const Glib::ustring&) const (const struct PatternSpec * const this, const struct ustring & str)
{
  bool D.32251;
  const char * D.32252;
  long unsigned int D.32253;
  unsigned int D.32254;
  struct GPatternSpec * D.32255;
  int D.32256;

  D.32252 = Glib::ustring::c_str (str);
  D.32253 = Glib::ustring::bytes (str);
  D.32254 = (unsigned int) D.32253;
  D.32255 = this->gobject_;
  D.32256 = g_pattern_match (D.32255, D.32254, D.32252, 0B);
  D.32251 = D.32256 != 0;
  return D.32251;
}


bool Glib::PatternSpec::match(const Glib::ustring&, const Glib::ustring&) const (const struct PatternSpec * const this, const struct ustring & str, const struct ustring & str_reversed)
{
  bool D.32261;
  const char * D.32262;
  const char * D.32263;
  long unsigned int D.32264;
  unsigned int D.32265;
  struct GPatternSpec * D.32266;
  int D.32267;

  D.32262 = Glib::ustring::c_str (str_reversed);
  D.32263 = Glib::ustring::c_str (str);
  D.32264 = Glib::ustring::bytes (str);
  D.32265 = (unsigned int) D.32264;
  D.32266 = this->gobject_;
  D.32267 = g_pattern_match (D.32266, D.32265, D.32263, D.32262);
  D.32261 = D.32267 != 0;
  return D.32261;
}


bool Glib::PatternSpec::operator==(const Glib::PatternSpec&) const (const struct PatternSpec * const this, const struct PatternSpec & rhs)
{
  bool D.32273;
  struct GPatternSpec * D.32274;
  struct GPatternSpec * D.32275;
  int D.32276;

  D.32274 = rhs->gobject_;
  D.32275 = this->gobject_;
  D.32276 = g_pattern_spec_equal (D.32275, D.32274);
  D.32273 = D.32276 != 0;
  return D.32273;
}


bool Glib::PatternSpec::operator!=(const Glib::PatternSpec&) const (const struct PatternSpec * const this, const struct PatternSpec & rhs)
{
  bool D.32279;
  struct GPatternSpec * D.32280;
  struct GPatternSpec * D.32281;
  int D.32282;

  D.32280 = rhs->gobject_;
  D.32281 = this->gobject_;
  D.32282 = g_pattern_spec_equal (D.32281, D.32280);
  D.32279 = D.32282 == 0;
  return D.32279;
}


