allow for Goal subclasses to provide copy operations, while prohibiting direct copy
This commit is contained in:
parent
09c0cacee2
commit
7d6fa03c51
1 changed files with 11 additions and 3 deletions
|
|
@ -50,6 +50,14 @@ namespace session {
|
||||||
using std::tr1::function;
|
using std::tr1::function;
|
||||||
using std::string;
|
using std::string;
|
||||||
|
|
||||||
|
class no_copy_by_client
|
||||||
|
{
|
||||||
|
protected:
|
||||||
|
~no_copy_by_client() {}
|
||||||
|
no_copy_by_client() {}
|
||||||
|
no_copy_by_client (no_copy_by_client const&) {}
|
||||||
|
const no_copy_by_client& operator=(no_copy_by_client const&) {}
|
||||||
|
};
|
||||||
|
|
||||||
class Goal;
|
class Goal;
|
||||||
class Resolution;
|
class Resolution;
|
||||||
|
|
@ -58,15 +66,15 @@ namespace session {
|
||||||
|
|
||||||
/** Allow for taking ownership of a result set */
|
/** Allow for taking ownership of a result set */
|
||||||
typedef std::tr1::shared_ptr<Resolution> PReso;
|
typedef std::tr1::shared_ptr<Resolution> PReso;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* TODO type comment
|
* TODO type comment
|
||||||
* Query ABC
|
* Query ABC
|
||||||
*/
|
*/
|
||||||
class Goal
|
class Goal
|
||||||
: noncopyable
|
: no_copy_by_client
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
virtual ~Goal() ;
|
virtual ~Goal() ;
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue