code: func newMemifError(code int, desc ...string) *MemifError {
  	var err *MemifError
  	if len(desc) > 0 {
  		err = &MemifError{code: code, description: "libmemif: " + desc[0]}
  	} else {
  		err = &MemifError{code: code, description: "libmemif: " + C.GoString(C.memif_strerror(C.int(code)))}
  	}
  	errorRegistry[code] = err
  	return err
  }
docs: // newMemifError builds and registers a new MemifError.