
#include "preact/gatekeeper.h"

// ------------ GateKeeperError ------------
GateKeeperError::GateKeeperError(string container, string info) throw() {
  description = "GateKeeperError: in "+container+", "+info ;
};

GateKeeperError::GateKeeperError(const GateKeeperError& k) throw() : description(k.description) {} ;

GateKeeperError& GateKeeperError::operator=(const GateKeeperError& k) throw() {
  if (&k!=this) {
    description = k.description ;
  }
  return *this ;
} ;

GateKeeperError::~GateKeeperError() throw() { } ;

const char* GateKeeperError::what() const throw() {
  return description.c_str() ;
} ;

const string GateKeeperError::whats() const throw() {
  return description ;
} ;

// ---- for testing ----
//#include "preact/fwrap.h"
//template class fwrapPtr<fp_64> ;
//template ostream& operator<<(ostream&, const fwrap<fp_64>&) ;
//template class GateKeeper< fwrapPtr<fp_64> > ;

