#line 343 "/home/travis/build/felix-lang/felix/src/packages/pthreads.fdoc"
  
  open class Mutex
  {
    requires package "flx_pthread";
    // this needs to be fixed to work with gc but at the
    // moment the uglier solution will suffice
    type mutex = "::flx::pthread::flx_mutex_t*" requires mutex_hxx;
    ctor mutex: unit = "new ::flx::pthread::flx_mutex_t";
    proc lock: mutex = "$1->lock();";
    proc unlock: mutex = "$1->unlock();";
    proc destroy: mutex = "delete $1;";
  }