Library: replace boost::noncopyable by our own library solution
Benefits - get rid of yet another pervasive Boost dependency - define additional more fine grained policies (move only, clonable)
This commit is contained in:
parent
8cb67fd9fa
commit
685a9b84ee
177 changed files with 369 additions and 439 deletions
|
|
@ -82,8 +82,6 @@ def configure(env):
|
||||||
if not conf.CheckCXXHeader('boost/config.hpp'):
|
if not conf.CheckCXXHeader('boost/config.hpp'):
|
||||||
problems.append('We need the C++ boost-libraries.')
|
problems.append('We need the C++ boost-libraries.')
|
||||||
else:
|
else:
|
||||||
if not conf.CheckCXXHeader('boost/noncopyable.hpp'):
|
|
||||||
problems.append('We need boost::noncopyable')
|
|
||||||
if not conf.CheckCXXHeader('boost/lexical_cast.hpp'):
|
if not conf.CheckCXXHeader('boost/lexical_cast.hpp'):
|
||||||
problems.append('We need boost::lexical_cast')
|
problems.append('We need boost::lexical_cast')
|
||||||
if not conf.CheckCXXHeader('boost/format.hpp'):
|
if not conf.CheckCXXHeader('boost/format.hpp'):
|
||||||
|
|
|
||||||
|
|
@ -54,41 +54,6 @@ source code comment near the static assertion statement to help solving the actu
|
||||||
|
|
||||||
Relevant Bosst extensions
|
Relevant Bosst extensions
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
.noncopyable
|
|
||||||
Inheriting from `boost::noncoypable` inhibits any copy, assignment and copy construction. It's a highly
|
|
||||||
recommended practice _by default to use that for every new class you create_ -- unless you know for sure
|
|
||||||
your class is going to have _value semantics_. The C++ language has kind of a ``fixation'' on value
|
|
||||||
semantics, passing objects by value, and the language adds a lot of magic on that behalf. Which might lead
|
|
||||||
to surprising results if you aren't aware of the fine details.
|
|
||||||
|
|
||||||
.type traits
|
|
||||||
Boost provides a very elaborate collection of type trait templates, allowing to ``detect'' several
|
|
||||||
properties of a given type at compile time. Since C++ has no reflection and only a very weak introspection
|
|
||||||
feature (RTTI, run time type information), using these type traits is often indispensable.
|
|
||||||
|
|
||||||
.enable_if
|
|
||||||
a simple but ingenious metaprogramming trick, allowing to control precisely in which cases the compiler
|
|
||||||
shall pick a specific class or function template specialisation. Basically this allows to control the
|
|
||||||
code generation, based on some type traits or other (metaprogramming) predicates you provide. Again,
|
|
||||||
since C++ is lacking introspection features, we're frequently forced to resort to metaprogramming
|
|
||||||
techniques, i.e to influence the way the compiler translates our code from within that very code.
|
|
||||||
|
|
||||||
.metaprogramming library
|
|
||||||
A very elaborate, and sometimes mind-bending library and framework. While heavily used within
|
|
||||||
Boost to build the more advanced features, it seems too complicated and esoteric for general purpose
|
|
||||||
and everyday use. Code written using the MPL tends to be very abstract and almost unreadable for
|
|
||||||
people without math background. In Lumiera, we _try to avoid using MPL directly._ Instead, we
|
|
||||||
supplement some metaprogramming helpers (type lists and tuples), written in a simple LISP style,
|
|
||||||
which -- hopefully -- should be decipherable without having to learn an abstract academic
|
|
||||||
terminology and framework.
|
|
||||||
|
|
||||||
.lambda
|
|
||||||
In a similar vein, the `boost::lambda` library might be worth exploring a bit, yet doesn't add
|
|
||||||
much value in practical use. It is stunning to see how this library adds the capability to define
|
|
||||||
real _lambda expressions_ on-the-fly, but since C++ was never designed for language extensions of
|
|
||||||
that kind, using lambda in practice is surprisingly tricky, sometimes even obscure and rarely
|
|
||||||
not worth the hassle. (An notable exception might be when it comes to defining parser combinators)
|
|
||||||
|
|
||||||
.operators
|
.operators
|
||||||
The `boost::operators` library allows to build families of types/objects with consistent
|
The `boost::operators` library allows to build families of types/objects with consistent
|
||||||
algebraic properties. Especially, it eases building _equality comparable_, _totally ordered_,
|
algebraic properties. Especially, it eases building _equality comparable_, _totally ordered_,
|
||||||
|
|
@ -109,6 +74,15 @@ quite some compilation overhead and size impact (-> see our own
|
||||||
link:http://git.lumiera.org/gitweb?p=lumiera/ichthyo;a=blob;f=src/lib/format-string.hpp;h=716aa0e3d23f09269973b7659910d74b3ee334ea;hb=37384f1b681f5bbfa7dc4d50b8588ed801fbddb3[formatting front-end]
|
link:http://git.lumiera.org/gitweb?p=lumiera/ichthyo;a=blob;f=src/lib/format-string.hpp;h=716aa0e3d23f09269973b7659910d74b3ee334ea;hb=37384f1b681f5bbfa7dc4d50b8588ed801fbddb3[formatting front-end]
|
||||||
to reduce this overhead)
|
to reduce this overhead)
|
||||||
|
|
||||||
|
.metaprogramming library
|
||||||
|
A very elaborate, and sometimes mind-bending library and framework. While heavily used within
|
||||||
|
Boost to build the more advanced features, it seems too complicated and esoteric for general purpose
|
||||||
|
and everyday use. Code written using the MPL tends to be very abstract and almost unreadable for
|
||||||
|
people without math background. In Lumiera, we _try to avoid using MPL directly._ Instead, we
|
||||||
|
supplement some metaprogramming helpers (type lists and tuples), written in a simple LISP style,
|
||||||
|
which -- hopefully -- should be decipherable without having to learn an abstract academic
|
||||||
|
terminology and framework.
|
||||||
|
|
||||||
.variant and any
|
.variant and any
|
||||||
These library provide a nice option for building data structures able to hold a mixture of
|
These library provide a nice option for building data structures able to hold a mixture of
|
||||||
multiple types, especially types not directly related to each other. `boost::variant` is a
|
multiple types, especially types not directly related to each other. `boost::variant` is a
|
||||||
|
|
|
||||||
|
|
@ -213,7 +213,7 @@ namespace engine {
|
||||||
*/
|
*/
|
||||||
class JobClosure
|
class JobClosure
|
||||||
: public lumiera_jobClosure
|
: public lumiera_jobClosure
|
||||||
, boost::noncopyable // ....has distinct identity and stable address
|
, util::NonCopyable // ....has distinct identity and stable address
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
virtual ~JobClosure(); ///< this is an interface
|
virtual ~JobClosure(); ///< this is an interface
|
||||||
|
|
|
||||||
|
|
@ -38,13 +38,11 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "lib/hash-value.h"
|
#include "lib/hash-value.h"
|
||||||
#include "lib/time/timevalue.hpp"
|
#include "lib/time/timevalue.hpp"
|
||||||
#include "backend/engine/scheduler-frontend.hpp"
|
#include "backend/engine/scheduler-frontend.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
//#include <string>
|
|
||||||
|
|
||||||
|
|
||||||
namespace backend{
|
namespace backend{
|
||||||
namespace engine {
|
namespace engine {
|
||||||
|
|
@ -68,7 +66,7 @@ namespace engine {
|
||||||
* of SchedulerDiagnostics may be used.
|
* of SchedulerDiagnostics may be used.
|
||||||
*/
|
*/
|
||||||
class SchedulerDiagnostics
|
class SchedulerDiagnostics
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
SchedulerFrontend& scheduler_;
|
SchedulerFrontend& scheduler_;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -49,7 +49,6 @@
|
||||||
//#include "lib/iter-source.hpp"
|
//#include "lib/iter-source.hpp"
|
||||||
//#include "lib/sync.hpp"
|
//#include "lib/sync.hpp"
|
||||||
|
|
||||||
//#include <boost/noncopyable.hpp>
|
|
||||||
//#include <string>
|
//#include <string>
|
||||||
//#include <vector>
|
//#include <vector>
|
||||||
//#include <memory>
|
//#include <memory>
|
||||||
|
|
|
||||||
|
|
@ -41,6 +41,7 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "include/logging.h"
|
#include "include/logging.h"
|
||||||
#include "lib/meta/function.hpp"
|
#include "lib/meta/function.hpp"
|
||||||
#include "lib/result.hpp"
|
#include "lib/result.hpp"
|
||||||
|
|
@ -107,6 +108,7 @@ namespace backend {
|
||||||
* If this doesn't happen, you'll block forever.
|
* If this doesn't happen, you'll block forever.
|
||||||
*/
|
*/
|
||||||
class Thread
|
class Thread
|
||||||
|
: util::MoveOnly
|
||||||
{
|
{
|
||||||
/** @internal perfect forwarding through a C-style `void*` */
|
/** @internal perfect forwarding through a C-style `void*` */
|
||||||
template<class FUN>
|
template<class FUN>
|
||||||
|
|
@ -179,14 +181,6 @@ namespace backend {
|
||||||
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
// Threads can be moved only
|
|
||||||
Thread (Thread &&) = default;
|
|
||||||
|
|
||||||
// Threads must not be copied and assigned
|
|
||||||
Thread (Thread const&) = delete;
|
|
||||||
Thread& operator= (Thread &&) = delete;
|
|
||||||
Thread& operator= (Thread const&) = delete;
|
|
||||||
|
|
||||||
/** Create a new thread to execute the given operation.
|
/** Create a new thread to execute the given operation.
|
||||||
* The new thread starts up synchronously, can't be cancelled and it can't be joined.
|
* The new thread starts up synchronously, can't be cancelled and it can't be joined.
|
||||||
* @param purpose fixed char string used to denote the thread for diagnostics
|
* @param purpose fixed char string used to denote the thread for diagnostics
|
||||||
|
|
|
||||||
|
|
@ -95,14 +95,13 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "lib/null-value.hpp"
|
#include "lib/null-value.hpp"
|
||||||
#include "lib/symbol.hpp"
|
#include "lib/symbol.hpp"
|
||||||
#include "lib/util.hpp"
|
#include "lib/util.hpp"
|
||||||
|
|
||||||
#include "common/advice/binding.hpp"
|
#include "common/advice/binding.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
|
|
||||||
|
|
||||||
namespace lumiera{
|
namespace lumiera{
|
||||||
namespace advice {
|
namespace advice {
|
||||||
|
|
@ -315,7 +314,7 @@ namespace advice {
|
||||||
template<class AD>
|
template<class AD>
|
||||||
class ActiveProvision
|
class ActiveProvision
|
||||||
: public PointOfAdvice
|
: public PointOfAdvice
|
||||||
, boost::noncopyable
|
, util::NonCopyable
|
||||||
{
|
{
|
||||||
AD theAdvice_;
|
AD theAdvice_;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -90,6 +90,7 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "lib/del-stash.hpp"
|
#include "lib/del-stash.hpp"
|
||||||
#include "lib/depend.hpp"
|
#include "lib/depend.hpp"
|
||||||
#include "lib/symbol.hpp"
|
#include "lib/symbol.hpp"
|
||||||
|
|
@ -99,7 +100,6 @@
|
||||||
#include "common/advice.hpp"
|
#include "common/advice.hpp"
|
||||||
#include "common/advice/index.hpp"
|
#include "common/advice/index.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
|
|
||||||
using lib::Literal;
|
using lib::Literal;
|
||||||
using lib::DelStash;
|
using lib::DelStash;
|
||||||
|
|
@ -121,7 +121,7 @@ namespace advice {
|
||||||
*/
|
*/
|
||||||
class AdviceSystem
|
class AdviceSystem
|
||||||
: public lib::Sync<>
|
: public lib::Sync<>
|
||||||
, boost::noncopyable
|
, util::NonCopyable
|
||||||
{
|
{
|
||||||
|
|
||||||
DelStash adviceDataRegistry_;
|
DelStash adviceDataRegistry_;
|
||||||
|
|
|
||||||
|
|
@ -41,11 +41,11 @@
|
||||||
#define LUMIERA_APPSTATE_H
|
#define LUMIERA_APPSTATE_H
|
||||||
|
|
||||||
#include "lib/symbol.hpp"
|
#include "lib/symbol.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "common/option.hpp"
|
#include "common/option.hpp"
|
||||||
#include "common/subsys.hpp"
|
#include "common/subsys.hpp"
|
||||||
#include "common/basic-setup.hpp"
|
#include "common/basic-setup.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <memory>
|
#include <memory>
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <map>
|
#include <map>
|
||||||
|
|
@ -55,7 +55,6 @@
|
||||||
namespace lumiera {
|
namespace lumiera {
|
||||||
|
|
||||||
using std::string;
|
using std::string;
|
||||||
using boost::noncopyable;
|
|
||||||
|
|
||||||
class SubsystemRunner;
|
class SubsystemRunner;
|
||||||
|
|
||||||
|
|
@ -68,7 +67,7 @@ namespace lumiera {
|
||||||
* @warning don't use AppState in destructors.
|
* @warning don't use AppState in destructors.
|
||||||
*/
|
*/
|
||||||
class AppState
|
class AppState
|
||||||
: private noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
AppState ();
|
AppState ();
|
||||||
|
|
|
||||||
|
|
@ -55,10 +55,10 @@
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
#include "lib/symbol.hpp"
|
#include "lib/symbol.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "lib/util.hpp"
|
#include "lib/util.hpp"
|
||||||
|
|
||||||
#include <boost/program_options.hpp>
|
#include <boost/program_options.hpp>
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -95,7 +95,7 @@ namespace lumiera {
|
||||||
* @see AppState
|
* @see AppState
|
||||||
*/
|
*/
|
||||||
class BasicSetup
|
class BasicSetup
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
opt::options_description syntax;
|
opt::options_description syntax;
|
||||||
opt::variables_map settings;
|
opt::variables_map settings;
|
||||||
|
|
|
||||||
|
|
@ -57,7 +57,7 @@ namespace gui {
|
||||||
|
|
||||||
/** load and start the GUI as a plugin */
|
/** load and start the GUI as a plugin */
|
||||||
struct GuiRunner
|
struct GuiRunner
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
typedef InstanceHandle<LUMIERA_INTERFACE_INAME(lumieraorg_Gui, 1)> GuiHandle;
|
typedef InstanceHandle<LUMIERA_INTERFACE_INAME(lumieraorg_Gui, 1)> GuiHandle;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -43,6 +43,7 @@
|
||||||
|
|
||||||
#include "include/logging.h"
|
#include "include/logging.h"
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "include/interfaceproxy.hpp"
|
#include "include/interfaceproxy.hpp"
|
||||||
|
|
||||||
extern "C" {
|
extern "C" {
|
||||||
|
|
@ -50,7 +51,6 @@ extern "C" {
|
||||||
#include "common/interfaceregistry.h"
|
#include "common/interfaceregistry.h"
|
||||||
}
|
}
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -118,7 +118,7 @@ namespace lumiera {
|
||||||
*/
|
*/
|
||||||
template<class I, class FA>
|
template<class I, class FA>
|
||||||
struct Link
|
struct Link
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
typedef InstanceHandle<I,FA> IH;
|
typedef InstanceHandle<I,FA> IH;
|
||||||
|
|
||||||
|
|
@ -140,7 +140,7 @@ namespace lumiera {
|
||||||
*/
|
*/
|
||||||
template<class I>
|
template<class I>
|
||||||
struct Link<I,I>
|
struct Link<I,I>
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
typedef InstanceHandle<I,I> IH;
|
typedef InstanceHandle<I,I> IH;
|
||||||
|
|
||||||
|
|
@ -174,7 +174,7 @@ namespace lumiera {
|
||||||
, class FA = I ///< facade interface type to be used by clients
|
, class FA = I ///< facade interface type to be used by clients
|
||||||
>
|
>
|
||||||
class InstanceHandle
|
class InstanceHandle
|
||||||
: private boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
LumieraInterface desc_;
|
LumieraInterface desc_;
|
||||||
I* instance_;
|
I* instance_;
|
||||||
|
|
|
||||||
|
|
@ -51,11 +51,11 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "lib/meta/util.hpp"
|
#include "lib/meta/util.hpp"
|
||||||
#include "include/interfaceproxy.hpp"
|
#include "include/interfaceproxy.hpp"
|
||||||
#include "lib/symbol.hpp"
|
#include "lib/symbol.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -83,7 +83,7 @@ namespace facade {
|
||||||
template<class FA>
|
template<class FA>
|
||||||
class InterfaceFacadeLink
|
class InterfaceFacadeLink
|
||||||
: protected Accessor<FA>
|
: protected Accessor<FA>
|
||||||
, boost::noncopyable
|
, util::NonCopyable
|
||||||
{
|
{
|
||||||
string displayName_;
|
string displayName_;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -74,7 +74,7 @@ namespace lumiera {
|
||||||
* unrecognised parts.
|
* unrecognised parts.
|
||||||
*/
|
*/
|
||||||
class Option
|
class Option
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
Option (lib::Cmdline& cmdline);
|
Option (lib::Cmdline& cmdline);
|
||||||
|
|
|
||||||
|
|
@ -123,7 +123,7 @@ namespace lumiera {
|
||||||
* of the type of query.
|
* of the type of query.
|
||||||
*/
|
*/
|
||||||
class Goal
|
class Goal
|
||||||
: util::no_copy_by_client
|
: util::Cloneable
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
virtual ~Goal(); ///< this is a marker baseclass
|
virtual ~Goal(); ///< this is a marker baseclass
|
||||||
|
|
|
||||||
|
|
@ -96,9 +96,9 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/p.hpp"
|
#include "lib/p.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "common/query.hpp"
|
#include "common/query.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <memory>
|
#include <memory>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -127,7 +127,8 @@ namespace query {
|
||||||
* roughly final, as of 12/09 most of the actual object
|
* roughly final, as of 12/09 most of the actual object
|
||||||
* handling is placeholder code.
|
* handling is placeholder code.
|
||||||
*/
|
*/
|
||||||
class DefsManager : private boost::noncopyable
|
class DefsManager
|
||||||
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
unique_ptr<impl::DefsRegistry> defsRegistry_;
|
unique_ptr<impl::DefsRegistry> defsRegistry_;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -55,11 +55,11 @@
|
||||||
#include "lib/format-string.hpp"
|
#include "lib/format-string.hpp"
|
||||||
#include "lib/query-util.hpp"
|
#include "lib/query-util.hpp"
|
||||||
#include "common/query.hpp"
|
#include "common/query.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <set>
|
#include <set>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
#include <memory>
|
#include <memory>
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
|
|
||||||
|
|
||||||
namespace lumiera{
|
namespace lumiera{
|
||||||
|
|
@ -193,7 +193,7 @@ namespace query {
|
||||||
* exact behaviour has to be defined.
|
* exact behaviour has to be defined.
|
||||||
*/
|
*/
|
||||||
class DefsRegistry
|
class DefsRegistry
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
Table table_;
|
Table table_;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -37,8 +37,8 @@
|
||||||
|
|
||||||
#include "lib/iter-adapter.hpp"
|
#include "lib/iter-adapter.hpp"
|
||||||
#include "common/query.hpp"
|
#include "common/query.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <functional>
|
#include <functional>
|
||||||
#include <memory>
|
#include <memory>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
@ -47,7 +47,6 @@ using std::function;
|
||||||
|
|
||||||
namespace lumiera {
|
namespace lumiera {
|
||||||
|
|
||||||
using boost::noncopyable;
|
|
||||||
using std::unique_ptr;
|
using std::unique_ptr;
|
||||||
using std::string;
|
using std::string;
|
||||||
|
|
||||||
|
|
@ -65,7 +64,7 @@ namespace lumiera {
|
||||||
* of an individual query resolution
|
* of an individual query resolution
|
||||||
*/
|
*/
|
||||||
class Resolution
|
class Resolution
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
typedef Goal::Result Result;
|
typedef Goal::Result Result;
|
||||||
|
|
@ -106,7 +105,7 @@ namespace lumiera {
|
||||||
* Thus the implementation might downcast query and resultset.
|
* Thus the implementation might downcast query and resultset.
|
||||||
*/
|
*/
|
||||||
class QueryResolver
|
class QueryResolver
|
||||||
: noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
unique_ptr<QueryDispatcher> dispatcher_;
|
unique_ptr<QueryDispatcher> dispatcher_;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -44,8 +44,8 @@
|
||||||
#define LUMIERA_SUBSYS_H
|
#define LUMIERA_SUBSYS_H
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <functional>
|
#include <functional>
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
@ -55,7 +55,6 @@
|
||||||
namespace lumiera {
|
namespace lumiera {
|
||||||
|
|
||||||
using std::string;
|
using std::string;
|
||||||
using boost::noncopyable;
|
|
||||||
using std::function;
|
using std::function;
|
||||||
|
|
||||||
class Option;
|
class Option;
|
||||||
|
|
@ -69,7 +68,7 @@ namespace lumiera {
|
||||||
* @note synchronisation is up to the implementor.
|
* @note synchronisation is up to the implementor.
|
||||||
*/
|
*/
|
||||||
class Subsys
|
class Subsys
|
||||||
: private noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
typedef function<void(string*)> SigTerm;
|
typedef function<void(string*)> SigTerm;
|
||||||
|
|
|
||||||
|
|
@ -47,8 +47,8 @@
|
||||||
#include "gui/workspace/workspace-window.hpp"
|
#include "gui/workspace/workspace-window.hpp"
|
||||||
#include "gui/workspace/panel-manager.hpp"
|
#include "gui/workspace/panel-manager.hpp"
|
||||||
#include "lib/format-string.hpp"
|
#include "lib/format-string.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -74,7 +74,7 @@ namespace ctrl {
|
||||||
* user action events.
|
* user action events.
|
||||||
*/
|
*/
|
||||||
class Actions
|
class Actions
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
GlobalCtx& globalCtx_;
|
GlobalCtx& globalCtx_;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -60,10 +60,10 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "lib/idi/entry-id.hpp"
|
#include "lib/idi/entry-id.hpp"
|
||||||
#include "lib/diff/gen-node.hpp"
|
#include "lib/diff/gen-node.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <utility>
|
#include <utility>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
|
|
@ -103,6 +103,7 @@ namespace ctrl{
|
||||||
* some element.
|
* some element.
|
||||||
*/
|
*/
|
||||||
class BusTerm
|
class BusTerm
|
||||||
|
: util::MoveOnly
|
||||||
{
|
{
|
||||||
protected:
|
protected:
|
||||||
using EntryID = lib::idi::BareEntryID;
|
using EntryID = lib::idi::BareEntryID;
|
||||||
|
|
@ -135,9 +136,6 @@ namespace ctrl{
|
||||||
/** may be moved, but not copied,
|
/** may be moved, but not copied,
|
||||||
* due to the embedded identity */
|
* due to the embedded identity */
|
||||||
BusTerm(BusTerm&&) = default;
|
BusTerm(BusTerm&&) = default;
|
||||||
BusTerm(BusTerm const&) = delete;
|
|
||||||
|
|
||||||
BusTerm& operator= (BusTerm const&) = delete;
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -81,6 +81,7 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "lib/idi/entry-id.hpp"
|
#include "lib/idi/entry-id.hpp"
|
||||||
#include "lib/diff/gen-node.hpp"
|
#include "lib/diff/gen-node.hpp"
|
||||||
#include "include/session-command-facade.h"
|
#include "include/session-command-facade.h"
|
||||||
|
|
@ -88,8 +89,6 @@
|
||||||
#include "gui/ctrl/bus-term.hpp"
|
#include "gui/ctrl/bus-term.hpp"
|
||||||
#include "gui/ctrl/nexus.hpp"
|
#include "gui/ctrl/nexus.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
|
|
||||||
|
|
||||||
namespace gui {
|
namespace gui {
|
||||||
namespace ctrl{
|
namespace ctrl{
|
||||||
|
|
@ -107,7 +106,7 @@ namespace ctrl{
|
||||||
*/
|
*/
|
||||||
class CoreService
|
class CoreService
|
||||||
: public BusTerm
|
: public BusTerm
|
||||||
, boost::noncopyable
|
, util::NonCopyable
|
||||||
{
|
{
|
||||||
|
|
||||||
Nexus uiBusBackbone_;
|
Nexus uiBusBackbone_;
|
||||||
|
|
|
||||||
|
|
@ -43,8 +43,8 @@
|
||||||
#define GUI_CTRL_FACADE_H
|
#define GUI_CTRL_FACADE_H
|
||||||
|
|
||||||
#include "gui/notification-service.hpp"
|
#include "gui/notification-service.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
|
|
||||||
|
|
||||||
namespace gui {
|
namespace gui {
|
||||||
|
|
@ -59,7 +59,7 @@ namespace ctrl {
|
||||||
* @remark the UiManager is responsible to activate and deactivate those interfaces
|
* @remark the UiManager is responsible to activate and deactivate those interfaces
|
||||||
*/
|
*/
|
||||||
class Facade
|
class Facade
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
NotificationService notificationService_;
|
NotificationService notificationService_;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -59,8 +59,8 @@
|
||||||
#include "gui/ctrl/window-locator.hpp"
|
#include "gui/ctrl/window-locator.hpp"
|
||||||
#include "gui/interact/wizard.hpp"
|
#include "gui/interact/wizard.hpp"
|
||||||
#include "gui/interact/interaction-director.hpp"
|
#include "gui/interact/interaction-director.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
//#include <string>
|
//#include <string>
|
||||||
//#include <memory>
|
//#include <memory>
|
||||||
|
|
||||||
|
|
@ -80,7 +80,7 @@ namespace ctrl {
|
||||||
* @remark the UiManager is responsible to install this top-level context
|
* @remark the UiManager is responsible to install this top-level context
|
||||||
*/
|
*/
|
||||||
class GlobalCtx
|
class GlobalCtx
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
|
||||||
|
|
@ -41,6 +41,7 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "lib/idi/genfunc.hpp"
|
#include "lib/idi/genfunc.hpp"
|
||||||
#include "lib/diff/mutation-message.hpp"
|
#include "lib/diff/mutation-message.hpp"
|
||||||
#include "lib/diff/tree-diff-application.hpp"
|
#include "lib/diff/tree-diff-application.hpp"
|
||||||
|
|
@ -48,7 +49,6 @@
|
||||||
#include "gui/model/tangible.hpp"
|
#include "gui/model/tangible.hpp"
|
||||||
#include "lib/idi/entry-id.hpp"
|
#include "lib/idi/entry-id.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <unordered_map>
|
#include <unordered_map>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -75,7 +75,7 @@ namespace ctrl{
|
||||||
*/
|
*/
|
||||||
class Nexus
|
class Nexus
|
||||||
: public BusTerm
|
: public BusTerm
|
||||||
, boost::noncopyable
|
, util::NonCopyable
|
||||||
{
|
{
|
||||||
typedef std::unordered_map<EntryID, Tangible*, EntryID::UseEmbeddedHash> RoutingTable;
|
typedef std::unordered_map<EntryID, Tangible*, EntryID::UseEmbeddedHash> RoutingTable;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -36,8 +36,8 @@
|
||||||
#define GUI_CTRL_PANEL_LOCATOR_H
|
#define GUI_CTRL_PANEL_LOCATOR_H
|
||||||
|
|
||||||
#include "gui/gtk-base.hpp"
|
#include "gui/gtk-base.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <memory>
|
#include <memory>
|
||||||
#include <list>
|
#include <list>
|
||||||
|
|
||||||
|
|
@ -57,7 +57,7 @@ namespace ctrl {
|
||||||
* located within the top-level windows.
|
* located within the top-level windows.
|
||||||
*/
|
*/
|
||||||
class PanelLocator
|
class PanelLocator
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
using PWindow = std::shared_ptr<workspace::WorkspaceWindow>;
|
using PWindow = std::shared_ptr<workspace::WorkspaceWindow>;
|
||||||
using WindowList = list<PWindow>;
|
using WindowList = list<PWindow>;
|
||||||
|
|
|
||||||
|
|
@ -42,8 +42,8 @@
|
||||||
#include "gui/gtk-base.hpp"
|
#include "gui/gtk-base.hpp"
|
||||||
#include "include/dummy-player-facade.h"
|
#include "include/dummy-player-facade.h"
|
||||||
#include "include/display-facade.h"
|
#include "include/display-facade.h"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
|
|
||||||
|
|
||||||
namespace gui {
|
namespace gui {
|
||||||
|
|
@ -53,7 +53,7 @@ namespace ctrl {
|
||||||
|
|
||||||
/** @deprecated we need a durable design for the playback process */
|
/** @deprecated we need a durable design for the playback process */
|
||||||
class PlaybackController
|
class PlaybackController
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
|
|
||||||
volatile bool playing_;
|
volatile bool playing_;
|
||||||
|
|
|
||||||
|
|
@ -55,8 +55,8 @@
|
||||||
|
|
||||||
#include "lib/idi/entry-id.hpp"
|
#include "lib/idi/entry-id.hpp"
|
||||||
#include "lib/diff/gen-node.hpp"
|
#include "lib/diff/gen-node.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -77,7 +77,7 @@ namespace ctrl {
|
||||||
* element.
|
* element.
|
||||||
*/
|
*/
|
||||||
class StateManager
|
class StateManager
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
protected:
|
protected:
|
||||||
virtual ~StateManager(); ///< this is an interface
|
virtual ~StateManager(); ///< this is an interface
|
||||||
|
|
|
||||||
|
|
@ -38,11 +38,11 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "lib/idi/entry-id.hpp"
|
#include "lib/idi/entry-id.hpp"
|
||||||
#include "lib/diff/gen-node.hpp"
|
#include "lib/diff/gen-node.hpp"
|
||||||
#include "lib/util.hpp"
|
#include "lib/util.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <unordered_map>
|
#include <unordered_map>
|
||||||
#include <algorithm>
|
#include <algorithm>
|
||||||
#include <set>
|
#include <set>
|
||||||
|
|
@ -72,7 +72,7 @@ namespace ctrl {
|
||||||
* @see StateMapGroupingStorage_test
|
* @see StateMapGroupingStorage_test
|
||||||
*/
|
*/
|
||||||
class StateMapGroupingStorage
|
class StateMapGroupingStorage
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
using StateData = std::set<GenNode, GenNode::IDComparator>;
|
using StateData = std::set<GenNode, GenNode::IDComparator>;
|
||||||
using Storage = std::unordered_map<BareEntryID, StateData, BareEntryID::UseEmbeddedHash>;
|
using Storage = std::unordered_map<BareEntryID, StateData, BareEntryID::UseEmbeddedHash>;
|
||||||
|
|
|
||||||
|
|
@ -78,8 +78,8 @@
|
||||||
#include "gui/gtk-base.hpp"
|
#include "gui/gtk-base.hpp"
|
||||||
#include "lib/call-queue.hpp"
|
#include "lib/call-queue.hpp"
|
||||||
#include "lib/format-string.hpp"
|
#include "lib/format-string.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <utility>
|
#include <utility>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -109,7 +109,7 @@ namespace ctrl {
|
||||||
* it outlives the GTK event loop
|
* it outlives the GTK event loop
|
||||||
*/
|
*/
|
||||||
class UiDispatcher
|
class UiDispatcher
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
lib::CallQueue queue_;
|
lib::CallQueue queue_;
|
||||||
Glib::Dispatcher dispatcher_;
|
Glib::Dispatcher dispatcher_;
|
||||||
|
|
|
||||||
|
|
@ -48,8 +48,8 @@
|
||||||
#define GUI_CTRL_UI_MANAGER_H
|
#define GUI_CTRL_UI_MANAGER_H
|
||||||
|
|
||||||
#include "gui/gtk-base.hpp"
|
#include "gui/gtk-base.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <memory>
|
#include <memory>
|
||||||
|
|
||||||
|
|
@ -72,7 +72,7 @@ namespace ctrl {
|
||||||
|
|
||||||
/** Framework initialisation base */
|
/** Framework initialisation base */
|
||||||
class ApplicationBase
|
class ApplicationBase
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
protected:
|
protected:
|
||||||
ApplicationBase();
|
ApplicationBase();
|
||||||
|
|
|
||||||
|
|
@ -55,8 +55,8 @@
|
||||||
#define GUI__H
|
#define GUI__H
|
||||||
|
|
||||||
#include "gui/gtk-base.hpp"
|
#include "gui/gtk-base.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
//#include <string>
|
//#include <string>
|
||||||
//#include <memory>
|
//#include <memory>
|
||||||
|
|
||||||
|
|
@ -82,7 +82,7 @@ namespace ctrl {
|
||||||
* @todo initial draft as of 2/2017 -- actual implementation has to be filled in
|
* @todo initial draft as of 2/2017 -- actual implementation has to be filled in
|
||||||
*/
|
*/
|
||||||
class UiState
|
class UiState
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
StateManager& stateManager_;
|
StateManager& stateManager_;
|
||||||
interact::FocusTracker& tracker_;
|
interact::FocusTracker& tracker_;
|
||||||
|
|
|
||||||
|
|
@ -37,8 +37,8 @@
|
||||||
|
|
||||||
#include "gui/gtk-base.hpp"
|
#include "gui/gtk-base.hpp"
|
||||||
#include "gui/ctrl/panel-locator.hpp"
|
#include "gui/ctrl/panel-locator.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <memory>
|
#include <memory>
|
||||||
#include <list>
|
#include <list>
|
||||||
|
|
||||||
|
|
@ -61,7 +61,7 @@ namespace ctrl {
|
||||||
* A centralised manager of all top level application windows.
|
* A centralised manager of all top level application windows.
|
||||||
*/
|
*/
|
||||||
class WindowLocator
|
class WindowLocator
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
using PWindow = std::shared_ptr<workspace::WorkspaceWindow>;
|
using PWindow = std::shared_ptr<workspace::WorkspaceWindow>;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -43,8 +43,8 @@
|
||||||
#include "lib/depend.hpp"
|
#include "lib/depend.hpp"
|
||||||
#include "gui/ui-bus.hpp"
|
#include "gui/ui-bus.hpp"
|
||||||
#include "gui/ctrl/ui-manager.hpp"
|
#include "gui/ctrl/ui-manager.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -77,7 +77,7 @@ namespace gui {
|
||||||
* @see CallQueue_test
|
* @see CallQueue_test
|
||||||
*/
|
*/
|
||||||
class DemoGuiRoundtrip
|
class DemoGuiRoundtrip
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
string nothing_;
|
string nothing_;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -55,10 +55,10 @@
|
||||||
#include "lib/singleton-ref.hpp"
|
#include "lib/singleton-ref.hpp"
|
||||||
#include "lib/scoped-ptrvect.hpp"
|
#include "lib/scoped-ptrvect.hpp"
|
||||||
#include "include/logging.h"
|
#include "include/logging.h"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <glibmm.h>
|
#include <glibmm.h>
|
||||||
#include <sigc++/sigc++.h>
|
#include <sigc++/sigc++.h>
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
|
|
@ -84,7 +84,7 @@ namespace gui {
|
||||||
*/
|
*/
|
||||||
class DisplayerSlot
|
class DisplayerSlot
|
||||||
: public lumiera_displaySlot,
|
: public lumiera_displaySlot,
|
||||||
boost::noncopyable
|
util::NonCopyable
|
||||||
{
|
{
|
||||||
Dispatcher dispatcher_;
|
Dispatcher dispatcher_;
|
||||||
FrameSignal hasFrame_;
|
FrameSignal hasFrame_;
|
||||||
|
|
@ -128,7 +128,7 @@ namespace gui {
|
||||||
* course of the play process for outputting frames.
|
* course of the play process for outputting frames.
|
||||||
*/
|
*/
|
||||||
class DisplayService
|
class DisplayService
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
|
|
||||||
string error_;
|
string error_;
|
||||||
|
|
|
||||||
|
|
@ -55,13 +55,13 @@
|
||||||
#include "gui/display-service.hpp"
|
#include "gui/display-service.hpp"
|
||||||
#include "backend/thread-wrapper.hpp"
|
#include "backend/thread-wrapper.hpp"
|
||||||
#include "common/subsys.hpp"
|
#include "common/subsys.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
extern "C" {
|
extern "C" {
|
||||||
#include "common/interface.h"
|
#include "common/interface.h"
|
||||||
#include "common/interface-descriptor.h"
|
#include "common/interface-descriptor.h"
|
||||||
}
|
}
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -89,7 +89,7 @@ namespace gui {
|
||||||
* open other interfaces here...) ///////////////////////////TICKET #82
|
* open other interfaces here...) ///////////////////////////TICKET #82
|
||||||
*/
|
*/
|
||||||
class GtkLumiera
|
class GtkLumiera
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
UiBus uiBus_;
|
UiBus uiBus_;
|
||||||
UiManager uiManager_;
|
UiManager uiManager_;
|
||||||
|
|
|
||||||
|
|
@ -39,12 +39,12 @@
|
||||||
|
|
||||||
|
|
||||||
#include "common/subsys.hpp"
|
#include "common/subsys.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
extern "C" {
|
extern "C" {
|
||||||
#include "common/interface.h"
|
#include "common/interface.h"
|
||||||
}
|
}
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
|
|
||||||
|
|
||||||
namespace gui {
|
namespace gui {
|
||||||
|
|
@ -77,7 +77,7 @@ namespace gui {
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
class GuiFacade
|
class GuiFacade
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -34,7 +34,6 @@
|
||||||
//#include "include/logging.h"
|
//#include "include/logging.h"
|
||||||
#include "gui/interact/cmd-context.hpp"
|
#include "gui/interact/cmd-context.hpp"
|
||||||
|
|
||||||
//#include <boost/noncopyable.hpp>
|
|
||||||
//#include <string>
|
//#include <string>
|
||||||
//#include <map>
|
//#include <map>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -55,13 +55,13 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
//#include "gui/ctrl/bus-term.hpp"
|
//#include "gui/ctrl/bus-term.hpp"
|
||||||
//#include "lib/idi/entry-id.hpp"
|
//#include "lib/idi/entry-id.hpp"
|
||||||
#include "lib/hash-indexed.hpp"
|
#include "lib/hash-indexed.hpp"
|
||||||
#include "lib/symbol.hpp"
|
#include "lib/symbol.hpp"
|
||||||
//#include "lib/util.hpp"
|
//#include "lib/util.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -81,7 +81,7 @@ namespace interact {
|
||||||
* @todo write type comment...
|
* @todo write type comment...
|
||||||
*/
|
*/
|
||||||
class CmdContext
|
class CmdContext
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
|
||||||
|
|
@ -55,8 +55,8 @@
|
||||||
#define GUI_INTERACT_FOCUS_TRACKER_H
|
#define GUI_INTERACT_FOCUS_TRACKER_H
|
||||||
|
|
||||||
#include "gui/gtk-base.hpp"
|
#include "gui/gtk-base.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
//#include <string>
|
//#include <string>
|
||||||
//#include <memory>
|
//#include <memory>
|
||||||
|
|
||||||
|
|
@ -81,7 +81,7 @@ namespace interact {
|
||||||
* @todo initial draft as of 2/2017 -- actual implementation has to be filled in
|
* @todo initial draft as of 2/2017 -- actual implementation has to be filled in
|
||||||
*/
|
*/
|
||||||
class FocusTracker
|
class FocusTracker
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
Navigator& navigator_;
|
Navigator& navigator_;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -56,7 +56,6 @@
|
||||||
//#include "gui/gtk-base.hpp"
|
//#include "gui/gtk-base.hpp"
|
||||||
#include "gui/model/controller.hpp"
|
#include "gui/model/controller.hpp"
|
||||||
|
|
||||||
//#include <boost/noncopyable.hpp>
|
|
||||||
//#include <cairomm/cairomm.h>
|
//#include <cairomm/cairomm.h>
|
||||||
//#include <string>
|
//#include <string>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
|
||||||
|
|
@ -34,7 +34,6 @@
|
||||||
//#include "include/logging.h"
|
//#include "include/logging.h"
|
||||||
#include "gui/interact/interaction-state.hpp"
|
#include "gui/interact/interaction-state.hpp"
|
||||||
|
|
||||||
//#include <boost/noncopyable.hpp>
|
|
||||||
//#include <string>
|
//#include <string>
|
||||||
//#include <map>
|
//#include <map>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -39,12 +39,12 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "gui/ctrl/bus-term.hpp"
|
#include "gui/ctrl/bus-term.hpp"
|
||||||
#include "lib/idi/entry-id.hpp"
|
#include "lib/idi/entry-id.hpp"
|
||||||
//#include "lib/symbol.hpp"
|
//#include "lib/symbol.hpp"
|
||||||
//#include "lib/util.hpp"
|
//#include "lib/util.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -59,9 +59,10 @@ namespace interact {
|
||||||
/**
|
/**
|
||||||
* Abstract foundation of UI state tracking components.
|
* Abstract foundation of UI state tracking components.
|
||||||
* @todo write type comment...
|
* @todo write type comment...
|
||||||
|
* ///////////////////////////////////TODO do we need a translation unit interaction-state.cpp (otherwise delete it!)
|
||||||
*/
|
*/
|
||||||
class InteractionState
|
class InteractionState
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
protected:
|
protected:
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -40,8 +40,8 @@
|
||||||
|
|
||||||
#include "gui/gtk-base.hpp"
|
#include "gui/gtk-base.hpp"
|
||||||
#include "gui/interact/ui-coord-resolver.hpp"
|
#include "gui/interact/ui-coord-resolver.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
//#include <string>
|
//#include <string>
|
||||||
//#include <memory>
|
//#include <memory>
|
||||||
|
|
||||||
|
|
@ -66,7 +66,7 @@ namespace interact {
|
||||||
*/
|
*/
|
||||||
class Navigator
|
class Navigator
|
||||||
: public LocationQuery
|
: public LocationQuery
|
||||||
, boost::noncopyable
|
, util::NonCopyable
|
||||||
{
|
{
|
||||||
SpotLocator& spotLocator_;
|
SpotLocator& spotLocator_;
|
||||||
ViewLocator& viewLocator_;
|
ViewLocator& viewLocator_;
|
||||||
|
|
|
||||||
|
|
@ -40,8 +40,8 @@
|
||||||
#define GUI_INTERACT_SPOT_LOCATOR_H
|
#define GUI_INTERACT_SPOT_LOCATOR_H
|
||||||
|
|
||||||
#include "gui/gtk-base.hpp"
|
#include "gui/gtk-base.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
//#include <string>
|
//#include <string>
|
||||||
//#include <memory>
|
//#include <memory>
|
||||||
|
|
||||||
|
|
@ -62,7 +62,7 @@ namespace interact {
|
||||||
* @todo initial draft as of 2/2017 -- actual implementation has to be filled in
|
* @todo initial draft as of 2/2017 -- actual implementation has to be filled in
|
||||||
*/
|
*/
|
||||||
class SpotLocator
|
class SpotLocator
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
|
||||||
|
|
@ -85,6 +85,7 @@
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
#include "lib/symbol.hpp"
|
#include "lib/symbol.hpp"
|
||||||
#include "lib/path-array.hpp"
|
#include "lib/path-array.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "lib/util.hpp"
|
#include "lib/util.hpp"
|
||||||
|
|
||||||
#include <cstring>
|
#include <cstring>
|
||||||
|
|
@ -500,6 +501,7 @@ namespace interact {
|
||||||
class LocationClause;
|
class LocationClause;
|
||||||
|
|
||||||
class UICoord::Builder
|
class UICoord::Builder
|
||||||
|
: util::MoveOnly
|
||||||
{
|
{
|
||||||
protected:
|
protected:
|
||||||
UICoord uic_;
|
UICoord uic_;
|
||||||
|
|
@ -510,10 +512,6 @@ namespace interact {
|
||||||
Builder (UICoord && anonRef) : uic_{std::move(anonRef)} { }
|
Builder (UICoord && anonRef) : uic_{std::move(anonRef)} { }
|
||||||
Builder (UICoord const& base) : uic_{base} { }
|
Builder (UICoord const& base) : uic_{base} { }
|
||||||
|
|
||||||
Builder (Builder const&) = delete;
|
|
||||||
Builder& operator= (Builder const&) = delete;
|
|
||||||
Builder& operator= (Builder &&) = delete;
|
|
||||||
|
|
||||||
/** builder instances created by UICoord */
|
/** builder instances created by UICoord */
|
||||||
friend class UICoord;
|
friend class UICoord;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -73,8 +73,8 @@
|
||||||
#include "lib/format-util.hpp"
|
#include "lib/format-util.hpp"
|
||||||
#include "gui/interact/ui-coord.hpp"
|
#include "gui/interact/ui-coord.hpp"
|
||||||
#include "gui/interact/ui-coord-resolver.hpp"
|
#include "gui/interact/ui-coord-resolver.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <utility>
|
#include <utility>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
@ -103,7 +103,7 @@ namespace interact {
|
||||||
* @todo maybe add a flag to require the current query goal to exist in tree //////////////////////////////TICKET #1130
|
* @todo maybe add a flag to require the current query goal to exist in tree //////////////////////////////TICKET #1130
|
||||||
*/
|
*/
|
||||||
struct LocationClause
|
struct LocationClause
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
UICoord pattern;
|
UICoord pattern;
|
||||||
bool createParents;
|
bool createParents;
|
||||||
|
|
@ -129,7 +129,7 @@ namespace interact {
|
||||||
* in order and the first successfully matched clause wins.
|
* in order and the first successfully matched clause wins.
|
||||||
*/
|
*/
|
||||||
class LocationRule
|
class LocationRule
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
using Clauses = std::vector<LocationClause>;
|
using Clauses = std::vector<LocationClause>;
|
||||||
|
|
||||||
|
|
@ -233,7 +233,7 @@ namespace interact {
|
||||||
* @see UILocationResolver_test::simple_usage_example()
|
* @see UILocationResolver_test::simple_usage_example()
|
||||||
*/
|
*/
|
||||||
class UILocationSolver
|
class UILocationSolver
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
LocationQueryAccess getLocationQuery;
|
LocationQueryAccess getLocationQuery;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -59,8 +59,8 @@
|
||||||
#include "gui/gtk-base.hpp"
|
#include "gui/gtk-base.hpp"
|
||||||
#include "gui/interact/view-spec-dsl.hpp"
|
#include "gui/interact/view-spec-dsl.hpp"
|
||||||
#include "gui/id-scheme.hpp"
|
#include "gui/id-scheme.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <functional>
|
#include <functional>
|
||||||
//#include <string>
|
//#include <string>
|
||||||
#include <memory>
|
#include <memory>
|
||||||
|
|
@ -87,7 +87,7 @@ namespace interact {
|
||||||
* @todo initial draft as of 9/2017 -- actual implementation need to be filled in
|
* @todo initial draft as of 9/2017 -- actual implementation need to be filled in
|
||||||
*/
|
*/
|
||||||
class ViewLocator
|
class ViewLocator
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
ctrl::GlobalCtx& globals_;
|
ctrl::GlobalCtx& globals_;
|
||||||
unique_ptr<UILocationSolver> locResolver_;
|
unique_ptr<UILocationSolver> locResolver_;
|
||||||
|
|
|
||||||
|
|
@ -43,8 +43,8 @@
|
||||||
#define GUI_INTERACT_WIZARD_H
|
#define GUI_INTERACT_WIZARD_H
|
||||||
|
|
||||||
#include "gui/gtk-base.hpp"
|
#include "gui/gtk-base.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
//#include <string>
|
//#include <string>
|
||||||
//#include <memory>
|
//#include <memory>
|
||||||
|
|
||||||
|
|
@ -69,7 +69,7 @@ namespace interact {
|
||||||
* @todo initial draft as of 2/2017 -- actual implementation has to be filled in
|
* @todo initial draft as of 2/2017 -- actual implementation has to be filled in
|
||||||
*/
|
*/
|
||||||
class Wizard
|
class Wizard
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
ctrl::GlobalCtx& globalCtx_;
|
ctrl::GlobalCtx& globalCtx_;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -41,8 +41,8 @@
|
||||||
#define GUI_INTERACT_WORK_SITE_TRAIL_H
|
#define GUI_INTERACT_WORK_SITE_TRAIL_H
|
||||||
|
|
||||||
#include "gui/gtk-base.hpp"
|
#include "gui/gtk-base.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
//#include <string>
|
//#include <string>
|
||||||
//#include <memory>
|
//#include <memory>
|
||||||
|
|
||||||
|
|
@ -63,7 +63,7 @@ namespace interact {
|
||||||
* @todo initial draft as of 2/2017 -- actual implementation has to be filled in
|
* @todo initial draft as of 2/2017 -- actual implementation has to be filled in
|
||||||
*/
|
*/
|
||||||
class WorkSiteTrail
|
class WorkSiteTrail
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
|
||||||
|
|
@ -46,8 +46,8 @@
|
||||||
#define GUI_INTERACT_WORK_SITE_H
|
#define GUI_INTERACT_WORK_SITE_H
|
||||||
|
|
||||||
#include "gui/gtk-base.hpp"
|
#include "gui/gtk-base.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
//#include <string>
|
//#include <string>
|
||||||
//#include <memory>
|
//#include <memory>
|
||||||
|
|
||||||
|
|
@ -70,7 +70,7 @@ namespace interact {
|
||||||
* @todo initial draft as of 2/2017 -- actual implementation has to be filled in
|
* @todo initial draft as of 2/2017 -- actual implementation has to be filled in
|
||||||
*/
|
*/
|
||||||
class WorkSite
|
class WorkSite
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
|
||||||
|
|
@ -39,10 +39,10 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
//#include "lib/symbol.hpp"
|
//#include "lib/symbol.hpp"
|
||||||
//#include "lib/util.hpp"
|
//#include "lib/util.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
//#include <string>
|
//#include <string>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -64,7 +64,7 @@ namespace model {
|
||||||
* @see NA_test
|
* @see NA_test
|
||||||
*/
|
*/
|
||||||
class Diagnostics
|
class Diagnostics
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
|
||||||
|
|
@ -43,11 +43,11 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "lib/hash-value.h"
|
#include "lib/hash-value.h"
|
||||||
//#include "lib/symbol.hpp"
|
//#include "lib/symbol.hpp"
|
||||||
#include "lib/util.hpp"
|
#include "lib/util.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -41,7 +41,6 @@
|
||||||
#include "gui/model/session-facade.hpp"
|
#include "gui/model/session-facade.hpp"
|
||||||
#include "lib/depend.hpp"
|
#include "lib/depend.hpp"
|
||||||
|
|
||||||
//#include <boost/noncopyable.hpp>
|
|
||||||
//#include <string>
|
//#include <string>
|
||||||
//#include <map>
|
//#include <map>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -39,10 +39,10 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
//#include "lib/symbol.hpp"
|
//#include "lib/symbol.hpp"
|
||||||
//#include "lib/util.hpp"
|
//#include "lib/util.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -61,7 +61,7 @@ namespace model {
|
||||||
* @see NA_test
|
* @see NA_test
|
||||||
*/
|
*/
|
||||||
class SessionFacade
|
class SessionFacade
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
string nothing_;
|
string nothing_;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -131,12 +131,12 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "gui/ctrl/bus-term.hpp"
|
#include "gui/ctrl/bus-term.hpp"
|
||||||
#include "lib/diff/diff-mutable.hpp"
|
#include "lib/diff/diff-mutable.hpp"
|
||||||
#include "lib/idi/entry-id.hpp"
|
#include "lib/idi/entry-id.hpp"
|
||||||
#include "lib/symbol.hpp"
|
#include "lib/symbol.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <sigc++/trackable.h>
|
#include <sigc++/trackable.h>
|
||||||
#include <utility>
|
#include <utility>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
@ -156,7 +156,7 @@ namespace model {
|
||||||
* which is the [UI-Bus](ui-bus.hpp). Any tangible element acquires a distinct identity
|
* which is the [UI-Bus](ui-bus.hpp). Any tangible element acquires a distinct identity
|
||||||
* and has to be formed starting from an already existing bus nexus.
|
* and has to be formed starting from an already existing bus nexus.
|
||||||
* @see [explanation of the basic interactions](tangible.hpp)
|
* @see [explanation of the basic interactions](tangible.hpp)
|
||||||
* @warning Tangible is `noncopyable` for good reason: the UI-Bus Nexus adds a direct
|
* @warning Tangible is `NonCopyable` for good reason: the UI-Bus Nexus adds a direct
|
||||||
* reference into the routing table, tied to the given Tangible's ID (identity.
|
* reference into the routing table, tied to the given Tangible's ID (identity.
|
||||||
* Consequently you must not store tangibles in STL containers, since these
|
* Consequently you must not store tangibles in STL containers, since these
|
||||||
* might re-allocate and thus change the location in memory.
|
* might re-allocate and thus change the location in memory.
|
||||||
|
|
@ -164,7 +164,7 @@ namespace model {
|
||||||
class Tangible
|
class Tangible
|
||||||
: public sigc::trackable
|
: public sigc::trackable
|
||||||
, public lib::diff::DiffMutable
|
, public lib::diff::DiffMutable
|
||||||
, boost::noncopyable
|
, util::NonCopyable
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
using ID = ctrl::BusTerm::ID;
|
using ID = ctrl::BusTerm::ID;
|
||||||
|
|
|
||||||
|
|
@ -54,7 +54,6 @@
|
||||||
//#include "gui/gtk-base.hpp"
|
//#include "gui/gtk-base.hpp"
|
||||||
#include "gui/model/controller.hpp"
|
#include "gui/model/controller.hpp"
|
||||||
|
|
||||||
//#include <boost/noncopyable.hpp>
|
|
||||||
//#include <string>
|
//#include <string>
|
||||||
//#include <memory>
|
//#include <memory>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -105,8 +105,8 @@
|
||||||
|
|
||||||
#include "gui/gtk-base.hpp" //////////////////////////////////////////////////////TODO remove any GTK dependency if possible
|
#include "gui/gtk-base.hpp" //////////////////////////////////////////////////////TODO remove any GTK dependency if possible
|
||||||
#include "gui/ctrl/playback-controller.hpp"
|
#include "gui/ctrl/playback-controller.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <memory>
|
#include <memory>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -157,7 +157,7 @@ namespace gui {
|
||||||
* and must not be accessed from anywhere else.
|
* and must not be accessed from anywhere else.
|
||||||
*/
|
*/
|
||||||
class UiBus
|
class UiBus
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
unique_ptr<ctrl::CoreService> coreService_;
|
unique_ptr<ctrl::CoreService> coreService_;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -43,7 +43,7 @@ namespace timeline {
|
||||||
|
|
||||||
/////////TODO some questions:
|
/////////TODO some questions:
|
||||||
///////// 1) who is allowed to destroy DrawStrategy objects
|
///////// 1) who is allowed to destroy DrawStrategy objects
|
||||||
///////// 2) shouldn't DrawStragegy be boost::noncopyable?
|
///////// 2) shouldn't DrawStragegy be util::NonCopyable?
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -61,7 +61,7 @@ namespace gui {
|
||||||
* @see gui::widget::TimelineWidget
|
* @see gui::widget::TimelineWidget
|
||||||
*/
|
*/
|
||||||
class TimelineLayoutHelper
|
class TimelineLayoutHelper
|
||||||
: public boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
/** Definition of the layout track tree type.*/
|
/** Definition of the layout track tree type.*/
|
||||||
|
|
|
||||||
|
|
@ -66,7 +66,7 @@ namespace gui {
|
||||||
*/
|
*/
|
||||||
template<class TI>
|
template<class TI>
|
||||||
class SelectionListener
|
class SelectionListener
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
sigc::signal<void, TI> valueChangedSignal_;
|
sigc::signal<void, TI> valueChangedSignal_;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -37,8 +37,8 @@
|
||||||
#define GUI_WORKSPACE_STYLE_MANAGER_H
|
#define GUI_WORKSPACE_STYLE_MANAGER_H
|
||||||
|
|
||||||
#include "gui/gtk-base.hpp"
|
#include "gui/gtk-base.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <cairomm/cairomm.h>
|
#include <cairomm/cairomm.h>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
|
|
@ -64,7 +64,7 @@ namespace workspace {
|
||||||
*/
|
*/
|
||||||
class StyleManager
|
class StyleManager
|
||||||
: public Gtk::UIManager
|
: public Gtk::UIManager
|
||||||
, boost::noncopyable
|
, util::NonCopyable
|
||||||
{
|
{
|
||||||
|
|
||||||
string iconSearchPath_;
|
string iconSearchPath_;
|
||||||
|
|
|
||||||
|
|
@ -54,7 +54,6 @@
|
||||||
#include "include/interfaceproxy.hpp"
|
#include "include/interfaceproxy.hpp"
|
||||||
#include "lib/handle.hpp"
|
#include "lib/handle.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -41,7 +41,7 @@
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
|
|
||||||
#include "lib/symbol.hpp"
|
#include "lib/symbol.hpp"
|
||||||
#include <boost/noncopyable.hpp>
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -74,7 +74,7 @@ namespace lumiera {
|
||||||
* @note duplicate or repeated calls with the same callback are NOP
|
* @note duplicate or repeated calls with the same callback are NOP
|
||||||
*/
|
*/
|
||||||
class LifecycleHook
|
class LifecycleHook
|
||||||
: private boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
typedef void (*Hook)(void);
|
typedef void (*Hook)(void);
|
||||||
|
|
|
||||||
|
|
@ -48,11 +48,11 @@
|
||||||
#define LIB_ALLOCATION_CLUSTER_H
|
#define LIB_ALLOCATION_CLUSTER_H
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "lib/sync-classlock.hpp"
|
#include "lib/sync-classlock.hpp"
|
||||||
#include "lib/scoped-holder.hpp"
|
#include "lib/scoped-holder.hpp"
|
||||||
#include "lib/scoped-holder-transfer.hpp"
|
#include "lib/scoped-holder-transfer.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -88,7 +88,7 @@ namespace lib {
|
||||||
* Is this issue worth the hassle? //////////////////////////////TICKET #169
|
* Is this issue worth the hassle? //////////////////////////////TICKET #169
|
||||||
*/
|
*/
|
||||||
class AllocationCluster
|
class AllocationCluster
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
|
||||||
|
|
@ -40,8 +40,8 @@
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
#include "lib/sync.hpp"
|
#include "lib/sync.hpp"
|
||||||
#include "lib/iter-stack.hpp"
|
#include "lib/iter-stack.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <functional>
|
#include <functional>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -56,7 +56,7 @@ namespace lib {
|
||||||
* their concrete parameters into another thread for invocation.
|
* their concrete parameters into another thread for invocation.
|
||||||
*/
|
*/
|
||||||
class CallQueue
|
class CallQueue
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
, public Sync<>
|
, public Sync<>
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
|
||||||
|
|
@ -45,10 +45,10 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <vector>
|
#include <vector>
|
||||||
#include <algorithm>
|
#include <algorithm>
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <boost/utility/enable_if.hpp>
|
#include <boost/utility/enable_if.hpp>
|
||||||
#include <boost/type_traits/is_same.hpp>
|
#include <boost/type_traits/is_same.hpp>
|
||||||
|
|
||||||
|
|
@ -66,7 +66,7 @@ namespace lib {
|
||||||
* @warning clients must not add a given object more than once
|
* @warning clients must not add a given object more than once
|
||||||
*/
|
*/
|
||||||
class DelStash
|
class DelStash
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
|
|
||||||
typedef void KillFun(void*);
|
typedef void KillFun(void*);
|
||||||
|
|
|
||||||
|
|
@ -36,6 +36,7 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "lib/depend2.hpp"
|
#include "lib/depend2.hpp"
|
||||||
#include "lib/meta/function.hpp"
|
#include "lib/meta/function.hpp"
|
||||||
#include "lib/sync-classlock.hpp"
|
#include "lib/sync-classlock.hpp"
|
||||||
|
|
@ -110,7 +111,7 @@ namespace lib {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Configuration handle to expose a service implementation through the `Depend<SRV>` front-end.
|
* Configuration handle to expose a service implementation through the `Depend<SRV>` front-end.
|
||||||
* This noncopyable (but movable) handle shall be planted within the context operating the service
|
* This non-copyable (but movable) handle shall be planted within the context operating the service
|
||||||
* to be exposed. It will immediately create (in RAII style) and manage a heap-allocated instance
|
* to be exposed. It will immediately create (in RAII style) and manage a heap-allocated instance
|
||||||
* of the subclass `IMP` and expose a baseclass pointer to this specific instance through `Depend<SRV>`.
|
* of the subclass `IMP` and expose a baseclass pointer to this specific instance through `Depend<SRV>`.
|
||||||
* Moreover, the implementation subclass can be accessed through this handle, which acts as smart-ptr.
|
* Moreover, the implementation subclass can be accessed through this handle, which acts as smart-ptr.
|
||||||
|
|
@ -122,6 +123,7 @@ namespace lib {
|
||||||
*/
|
*/
|
||||||
template<class IMP>
|
template<class IMP>
|
||||||
class ServiceInstance
|
class ServiceInstance
|
||||||
|
: util::MoveOnly
|
||||||
{
|
{
|
||||||
std::unique_ptr<IMP> instance_;
|
std::unique_ptr<IMP> instance_;
|
||||||
|
|
||||||
|
|
@ -139,10 +141,6 @@ namespace lib {
|
||||||
deactivateServiceAccess();
|
deactivateServiceAccess();
|
||||||
}
|
}
|
||||||
|
|
||||||
ServiceInstance (ServiceInstance&&) = default;
|
|
||||||
ServiceInstance (ServiceInstance const&) = delete;
|
|
||||||
ServiceInstance& operator= (ServiceInstance&&) = delete;
|
|
||||||
|
|
||||||
explicit
|
explicit
|
||||||
operator bool() const
|
operator bool() const
|
||||||
{
|
{
|
||||||
|
|
@ -167,7 +165,7 @@ namespace lib {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Configuration handle for temporarily shadowing a dependency by a test mock instance.
|
* Configuration handle for temporarily shadowing a dependency by a test mock instance.
|
||||||
* This noncopyable (but movable) handle shall be planted within the immediate test context.
|
* This non-copyable (but movable) handle shall be planted within the immediate test context.
|
||||||
* It immediately stashes away the existing state and configuration from `Depend<SRV>`, but
|
* It immediately stashes away the existing state and configuration from `Depend<SRV>`, but
|
||||||
* waits for actual invocation of the `Depend<SRV>`-front-end to create a heap-allocated
|
* waits for actual invocation of the `Depend<SRV>`-front-end to create a heap-allocated
|
||||||
* instance of the `MOC` subclass, which it manages and exposes like a smart-ptr.
|
* instance of the `MOC` subclass, which it manages and exposes like a smart-ptr.
|
||||||
|
|
@ -175,6 +173,7 @@ namespace lib {
|
||||||
*/
|
*/
|
||||||
template<class MOC>
|
template<class MOC>
|
||||||
class Local
|
class Local
|
||||||
|
: util::MoveOnly
|
||||||
{
|
{
|
||||||
std::unique_ptr<MOC> mock_;
|
std::unique_ptr<MOC> mock_;
|
||||||
|
|
||||||
|
|
@ -205,10 +204,6 @@ namespace lib {
|
||||||
restoreOriginalFactory (origInstance_, origFactory_);
|
restoreOriginalFactory (origInstance_, origFactory_);
|
||||||
}
|
}
|
||||||
|
|
||||||
Local (Local&&) = default;
|
|
||||||
Local (Local const&) = delete;
|
|
||||||
Local& operator= (Local&&) = delete;
|
|
||||||
|
|
||||||
explicit
|
explicit
|
||||||
operator bool() const
|
operator bool() const
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -73,11 +73,11 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "lib/nobug-init.hpp"
|
#include "lib/nobug-init.hpp"
|
||||||
#include "lib/sync-classlock.hpp"
|
#include "lib/sync-classlock.hpp"
|
||||||
#include "lib/meta/util.hpp"
|
#include "lib/meta/util.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <type_traits>
|
#include <type_traits>
|
||||||
#include <functional>
|
#include <functional>
|
||||||
#include <memory>
|
#include <memory>
|
||||||
|
|
@ -93,7 +93,7 @@ namespace lib {
|
||||||
|
|
||||||
template<typename TAR, typename SEL =void>
|
template<typename TAR, typename SEL =void>
|
||||||
class InstanceHolder
|
class InstanceHolder
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
std::unique_ptr<TAR> instance_;
|
std::unique_ptr<TAR> instance_;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -145,7 +145,7 @@ namespace lib {
|
||||||
*/
|
*/
|
||||||
template<typename TAR>
|
template<typename TAR>
|
||||||
class InstanceHolder
|
class InstanceHolder
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
/** storage for the service instance */
|
/** storage for the service instance */
|
||||||
char buff_[sizeof(TAR)];
|
char buff_[sizeof(TAR)];
|
||||||
|
|
|
||||||
|
|
@ -46,9 +46,9 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "lib/thread-local.hpp"
|
#include "lib/thread-local.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <nobug.h>
|
#include <nobug.h>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -68,7 +68,7 @@ namespace lib {
|
||||||
*/
|
*/
|
||||||
template<typename VAL>
|
template<typename VAL>
|
||||||
class DiagnosticContext
|
class DiagnosticContext
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
typedef ThreadLocalPtr<DiagnosticContext> ThreadLocalAccess;
|
typedef ThreadLocalPtr<DiagnosticContext> ThreadLocalAccess;
|
||||||
typedef std::vector<VAL> ValSequence;
|
typedef std::vector<VAL> ValSequence;
|
||||||
|
|
|
||||||
|
|
@ -85,10 +85,10 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "lib/verb-token.hpp"
|
#include "lib/verb-token.hpp"
|
||||||
#include "lib/util.hpp"
|
#include "lib/util.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <tuple>
|
#include <tuple>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -285,7 +285,7 @@ namespace diff{
|
||||||
*/
|
*/
|
||||||
template<class TAR>
|
template<class TAR>
|
||||||
class DiffApplicator
|
class DiffApplicator
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
using Interpreter = DiffApplicationStrategy<TAR>;
|
using Interpreter = DiffApplicationStrategy<TAR>;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -61,8 +61,8 @@
|
||||||
#include "lib/diff/list-diff.hpp"
|
#include "lib/diff/list-diff.hpp"
|
||||||
#include "lib/diff/index-table.hpp"
|
#include "lib/diff/index-table.hpp"
|
||||||
#include "lib/iter-adapter.hpp"
|
#include "lib/iter-adapter.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <utility>
|
#include <utility>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -85,7 +85,7 @@ namespace diff{
|
||||||
*/
|
*/
|
||||||
template<class SEQ>
|
template<class SEQ>
|
||||||
class DiffDetector
|
class DiffDetector
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
using Val = typename SEQ::value_type;
|
using Val = typename SEQ::value_type;
|
||||||
using Idx = IndexTable<Val>;
|
using Idx = IndexTable<Val>;
|
||||||
|
|
|
||||||
|
|
@ -87,6 +87,7 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "lib/iter-adapter.hpp"
|
#include "lib/iter-adapter.hpp"
|
||||||
#include "lib/iter-adapter-stl.hpp"
|
#include "lib/iter-adapter-stl.hpp"
|
||||||
#include "lib/itertools.hpp"
|
#include "lib/itertools.hpp"
|
||||||
|
|
@ -94,8 +95,6 @@
|
||||||
#include "lib/util.hpp"
|
#include "lib/util.hpp"
|
||||||
|
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
|
|
||||||
#include <algorithm>
|
#include <algorithm>
|
||||||
#include <utility>
|
#include <utility>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
@ -399,7 +398,7 @@ namespace diff{
|
||||||
|
|
||||||
template<typename VAL>
|
template<typename VAL>
|
||||||
class Record<VAL>::Mutator
|
class Record<VAL>::Mutator
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
using Rec = Record<VAL>;
|
using Rec = Record<VAL>;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -53,9 +53,9 @@
|
||||||
#include "lib/format-string.hpp"
|
#include "lib/format-string.hpp"
|
||||||
#include "lib/format-util.hpp"
|
#include "lib/format-util.hpp"
|
||||||
#include "lib/test/event-log.hpp"
|
#include "lib/test/event-log.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "lib/util.hpp"
|
#include "lib/util.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <utility>
|
#include <utility>
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
@ -193,7 +193,7 @@ namespace diff{
|
||||||
* @see TreeMutatorBinding_test::mutateDummy()
|
* @see TreeMutatorBinding_test::mutateDummy()
|
||||||
*/
|
*/
|
||||||
class TestMutationTarget
|
class TestMutationTarget
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
using VecG = std::vector<GenNode>;
|
using VecG = std::vector<GenNode>;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -153,7 +153,7 @@ namespace diff{
|
||||||
* TreeMutators dedicated to nested scopes
|
* TreeMutators dedicated to nested scopes
|
||||||
*/
|
*/
|
||||||
class ScopeManager
|
class ScopeManager
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
virtual ~ScopeManager(); ///< this is an interface
|
virtual ~ScopeManager(); ///< this is an interface
|
||||||
|
|
|
||||||
|
|
@ -52,6 +52,7 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "lib/meta/trait.hpp"
|
#include "lib/meta/trait.hpp"
|
||||||
#include "lib/diff/gen-node.hpp"
|
#include "lib/diff/gen-node.hpp"
|
||||||
#include "lib/diff/tree-mutator.hpp"
|
#include "lib/diff/tree-mutator.hpp"
|
||||||
|
|
@ -96,6 +97,7 @@ namespace diff{
|
||||||
*/
|
*/
|
||||||
template<class COLL, class MAT, class CTR, class SEL, class ASS, class MUT>
|
template<class COLL, class MAT, class CTR, class SEL, class ASS, class MUT>
|
||||||
struct CollectionBinding
|
struct CollectionBinding
|
||||||
|
: util::MoveOnly
|
||||||
{
|
{
|
||||||
using Coll = typename Strip<COLL>::TypeReferred;
|
using Coll = typename Strip<COLL>::TypeReferred;
|
||||||
using Elm = typename Coll::value_type;
|
using Elm = typename Coll::value_type;
|
||||||
|
|
@ -128,10 +130,8 @@ namespace diff{
|
||||||
, openSub(u)
|
, openSub(u)
|
||||||
{ }
|
{ }
|
||||||
|
|
||||||
// allow move construction only,
|
// only move construction allowed,
|
||||||
// to enable use of unique_ptr in collections
|
// to enable use of unique_ptr in collections
|
||||||
CollectionBinding(CollectionBinding&&) = default;
|
|
||||||
CollectionBinding(CollectionBinding&) = delete;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -172,7 +172,7 @@ namespace diff{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private: /* === technicallities of container access === */
|
private: /* === Technicalities of container access === */
|
||||||
|
|
||||||
/** @internal technicality
|
/** @internal technicality
|
||||||
* Our iterator is actually a Lumiera RangeIter, and thus we need
|
* Our iterator is actually a Lumiera RangeIter, and thus we need
|
||||||
|
|
|
||||||
|
|
@ -94,6 +94,7 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "lib/symbol.hpp"
|
#include "lib/symbol.hpp"
|
||||||
#include "lib/meta/trait.hpp"
|
#include "lib/meta/trait.hpp"
|
||||||
#include "lib/diff/gen-node.hpp"
|
#include "lib/diff/gen-node.hpp"
|
||||||
|
|
@ -139,18 +140,15 @@ namespace diff{
|
||||||
* activities to concrete manipulations known within target scope.
|
* activities to concrete manipulations known within target scope.
|
||||||
*/
|
*/
|
||||||
class TreeMutator
|
class TreeMutator
|
||||||
|
: util::MoveOnly
|
||||||
{
|
{
|
||||||
|
|
||||||
public:
|
public:
|
||||||
virtual ~TreeMutator(); ///< this is an interface
|
virtual ~TreeMutator(); ///< this is an interface
|
||||||
|
|
||||||
/** only allow default and move construction */
|
// only default and move construction allowed
|
||||||
TreeMutator () =default;
|
TreeMutator () =default;
|
||||||
TreeMutator (TreeMutator&&) =default;
|
TreeMutator (TreeMutator&&) =default;
|
||||||
TreeMutator (TreeMutator const&) =delete;
|
|
||||||
|
|
||||||
TreeMutator& operator= (TreeMutator const&) =delete;
|
|
||||||
TreeMutator& operator= (TreeMutator&&) =delete;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -106,10 +106,10 @@
|
||||||
#define UTIL_FORMAT_STRING_H
|
#define UTIL_FORMAT_STRING_H
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "lib/meta/util.hpp"
|
#include "lib/meta/util.hpp"
|
||||||
#include "lib/meta/size-trait.hpp"
|
#include "lib/meta/size-trait.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -152,7 +152,7 @@ namespace util {
|
||||||
* @see FormatString_test
|
* @see FormatString_test
|
||||||
*/
|
*/
|
||||||
class _Fmt
|
class _Fmt
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
/** size of an opaque implementation Buffer */
|
/** size of an opaque implementation Buffer */
|
||||||
enum{ FORMATTER_SIZE = lib::meta::SizeTrait::BOOST_FORMAT };
|
enum{ FORMATTER_SIZE = lib::meta::SizeTrait::BOOST_FORMAT };
|
||||||
|
|
|
||||||
|
|
@ -55,8 +55,8 @@
|
||||||
#include "lib/meta/util.hpp"
|
#include "lib/meta/util.hpp"
|
||||||
#include "lib/iter-adapter.hpp"
|
#include "lib/iter-adapter.hpp"
|
||||||
#include "lib/itertools.hpp"
|
#include "lib/itertools.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <type_traits>
|
#include <type_traits>
|
||||||
#include <utility>
|
#include <utility>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
@ -232,7 +232,7 @@ namespace lib {
|
||||||
template<class IT, class ISO = IterSource<typename IT::value_type>>
|
template<class IT, class ISO = IterSource<typename IT::value_type>>
|
||||||
class WrappedLumieraIter
|
class WrappedLumieraIter
|
||||||
: public ISO
|
: public ISO
|
||||||
, boost::noncopyable
|
, util::NonCopyable
|
||||||
{
|
{
|
||||||
IT src_;
|
IT src_;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -245,7 +245,7 @@ namespace lib {
|
||||||
* to prepare and pre-fill a sequence
|
* to prepare and pre-fill a sequence
|
||||||
*/
|
*/
|
||||||
struct Builder
|
struct Builder
|
||||||
: util::no_copy_by_client
|
: util::Cloneable
|
||||||
{
|
{
|
||||||
Builder(IterQueue& initialElements)
|
Builder(IterQueue& initialElements)
|
||||||
: queue_(initialElements)
|
: queue_(initialElements)
|
||||||
|
|
|
||||||
|
|
@ -40,8 +40,8 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/util.hpp"
|
#include "lib/util.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <functional>
|
#include <functional>
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <set>
|
#include <set>
|
||||||
|
|
@ -50,7 +50,6 @@
|
||||||
|
|
||||||
namespace lumiera {
|
namespace lumiera {
|
||||||
|
|
||||||
using boost::noncopyable;
|
|
||||||
using util::contains;
|
using util::contains;
|
||||||
using std::function;
|
using std::function;
|
||||||
using std::string;
|
using std::string;
|
||||||
|
|
@ -64,7 +63,7 @@ namespace lumiera {
|
||||||
* to implement the lumiera lifecycle (init, shutdown) hooks.
|
* to implement the lumiera lifecycle (init, shutdown) hooks.
|
||||||
*/
|
*/
|
||||||
class LifecycleRegistry
|
class LifecycleRegistry
|
||||||
: private noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
typedef void (*Hook)(void);
|
typedef void (*Hook)(void);
|
||||||
|
|
|
||||||
|
|
@ -61,10 +61,10 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "lib/iter-adapter.hpp"
|
#include "lib/iter-adapter.hpp"
|
||||||
#include "lib/util.hpp"
|
#include "lib/util.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <boost/static_assert.hpp>
|
#include <boost/static_assert.hpp>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -315,7 +315,7 @@ namespace lib {
|
||||||
, class ALO = linked_elements::OwningHeapAllocated
|
, class ALO = linked_elements::OwningHeapAllocated
|
||||||
>
|
>
|
||||||
class LinkedElements
|
class LinkedElements
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
, ALO
|
, ALO
|
||||||
{
|
{
|
||||||
N* head_;
|
N* head_;
|
||||||
|
|
|
||||||
|
|
@ -98,7 +98,7 @@ namespace meta {
|
||||||
*/
|
*/
|
||||||
template<typename TAR>
|
template<typename TAR>
|
||||||
struct GenNodeAccessor
|
struct GenNodeAccessor
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
|
|
||||||
template<typename TY>
|
template<typename TY>
|
||||||
|
|
|
||||||
|
|
@ -45,7 +45,7 @@
|
||||||
** - full copy support
|
** - full copy support
|
||||||
** - copy construction but no assignment
|
** - copy construction but no assignment
|
||||||
** - only move construction allowed
|
** - only move construction allowed
|
||||||
** - noncopyable type
|
** - non-copyable type
|
||||||
** - we use type traits and a policy template to pick the correct implementation
|
** - we use type traits and a policy template to pick the correct implementation
|
||||||
** for a given data type. Any assignment or copy operations not supported by the
|
** for a given data type. Any assignment or copy operations not supported by the
|
||||||
** target type will be replaced by an implementation which raises a runtime error
|
** target type will be replaced by an implementation which raises a runtime error
|
||||||
|
|
|
||||||
|
|
@ -45,9 +45,9 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/diagnostic-context.hpp"
|
||||||
#include "lib/thread-local.hpp"
|
#include "lib/thread-local.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <nobug.h>
|
#include <nobug.h>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -77,7 +77,7 @@ namespace lib {
|
||||||
* Disabled placeholder for the Diagnostic context, not used in release builds.
|
* Disabled placeholder for the Diagnostic context, not used in release builds.
|
||||||
*/
|
*/
|
||||||
class NobugResourceHandleContext
|
class NobugResourceHandleContext
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
|
|
||||||
typedef nobug_resource_user* Handle;
|
typedef nobug_resource_user* Handle;
|
||||||
|
|
|
||||||
|
|
@ -23,44 +23,66 @@
|
||||||
|
|
||||||
/** @file nocopy.hpp
|
/** @file nocopy.hpp
|
||||||
** Mix-Ins to allow or prohibit various degrees of copying and cloning.
|
** Mix-Ins to allow or prohibit various degrees of copying and cloning.
|
||||||
** @todo 2016 this could be organised way better. Also C++11 offers a way more
|
** Whenever a class is conceived as entity with a well-defined "identity",
|
||||||
** elegant way of expressing the intention. We could get rid of `boost::noncopyable`
|
** or whenever a service has to manage resources, we consider it good practice
|
||||||
** The basic idea of using a marker mixin seems very reasonable though. ////////////////////////////TICKET #1084
|
** to define it by default as "non copyable". This rules out a lot of complexities
|
||||||
|
** with mutable state and confusion regarding equality.
|
||||||
|
** @remark inspired by [Boost-Noncopyable]
|
||||||
|
**
|
||||||
|
** [Boost-Noncopyable]: http://www.boost.org/doc/libs/1_55_0/libs/utility/utility.htm#Class_noncopyable
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
#ifndef LIB_NOCOPY_H
|
#ifndef LIB_NOCOPY_H
|
||||||
#define LIB_NOCOPY_H
|
#define LIB_NOCOPY_H
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
namespace util {
|
namespace util {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* any copy and copy construction prohibited
|
* Any copy and copy construction prohibited
|
||||||
*/
|
*/
|
||||||
class no_copy
|
class NonCopyable
|
||||||
: boost::noncopyable
|
{
|
||||||
{ };
|
protected:
|
||||||
|
~NonCopyable() = default;
|
||||||
|
NonCopyable() = default;
|
||||||
|
NonCopyable (NonCopyable const&) = delete;
|
||||||
|
NonCopyable& operator= (NonCopyable const&) = delete;
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* classes inheriting from this mixin
|
* Types marked with this mix-in may be moved but not copied
|
||||||
* may be created by copy-construction,
|
|
||||||
* but any copy-assignment is prohibited.
|
|
||||||
* @note especially this allows returning
|
|
||||||
* by-value from a builder function,
|
|
||||||
* while prohibiting any further copy
|
|
||||||
*/
|
*/
|
||||||
class no_copy_by_client
|
class MoveOnly
|
||||||
{
|
{
|
||||||
protected:
|
protected:
|
||||||
~no_copy_by_client() {}
|
~MoveOnly() = default;
|
||||||
no_copy_by_client() {}
|
MoveOnly() = default;
|
||||||
no_copy_by_client (no_copy_by_client const&) {}
|
MoveOnly (MoveOnly&&) = default;
|
||||||
no_copy_by_client const&
|
MoveOnly (MoveOnly const&) = delete;
|
||||||
operator=(no_copy_by_client const&) { return *this; }
|
MoveOnly& operator= (MoveOnly&&) = delete;
|
||||||
|
MoveOnly& operator= (MoveOnly const&) = delete;
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Types marked with this mix-in may be created by
|
||||||
|
* copy-construction (or move construction),
|
||||||
|
* but may be not reassigned thereafter.
|
||||||
|
* @remark especially this allows returning
|
||||||
|
* by-value from a builder function,
|
||||||
|
* while prohibiting any further copy
|
||||||
|
*/
|
||||||
|
class Cloneable
|
||||||
|
{
|
||||||
|
protected:
|
||||||
|
~Cloneable() = default;
|
||||||
|
Cloneable() = default;
|
||||||
|
Cloneable (Cloneable&&) = default;
|
||||||
|
Cloneable (Cloneable const&) = default;
|
||||||
|
Cloneable& operator= (Cloneable&&) = delete;
|
||||||
|
Cloneable& operator= (Cloneable const&) = delete;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace util
|
} // namespace util
|
||||||
|
|
|
||||||
|
|
@ -68,13 +68,13 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "lib/access-casted.hpp"
|
#include "lib/access-casted.hpp"
|
||||||
#include "lib/meta/util.hpp"
|
#include "lib/meta/util.hpp"
|
||||||
#include "lib/util.hpp"
|
#include "lib/util.hpp"
|
||||||
|
|
||||||
#include <utility>
|
|
||||||
#include <type_traits>
|
#include <type_traits>
|
||||||
#include <boost/noncopyable.hpp>
|
#include <utility>
|
||||||
|
|
||||||
|
|
||||||
namespace lib {
|
namespace lib {
|
||||||
|
|
@ -593,7 +593,7 @@ namespace lib {
|
||||||
, class DEFAULT = BA
|
, class DEFAULT = BA
|
||||||
>
|
>
|
||||||
class InPlaceBuffer
|
class InPlaceBuffer
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
|
|
||||||
mutable char buf_[siz];
|
mutable char buf_[siz];
|
||||||
|
|
|
||||||
|
|
@ -32,7 +32,7 @@
|
||||||
#define LIB_REF_ARRAY_H
|
#define LIB_REF_ARRAY_H
|
||||||
|
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
|
|
||||||
namespace lib {
|
namespace lib {
|
||||||
|
|
@ -46,7 +46,7 @@ namespace lib {
|
||||||
*/
|
*/
|
||||||
template<class T>
|
template<class T>
|
||||||
class RefArray
|
class RefArray
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
virtual ~RefArray() {} ///< this is an interface
|
virtual ~RefArray() {} ///< this is an interface
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/** @file scoped-collection.hpp
|
/** @file scoped-collection.hpp
|
||||||
** Managing a collection of noncopyable polymorphic objects in compact storage.
|
** Managing a collection of non-copyable polymorphic objects in compact storage.
|
||||||
** This helper supports the frequently encountered situation where a service
|
** This helper supports the frequently encountered situation where a service
|
||||||
** implementation internally manages a collection of implementation related
|
** implementation internally manages a collection of implementation related
|
||||||
** sub-components with reference semantics. Typically, those objects are
|
** sub-components with reference semantics. Typically, those objects are
|
||||||
|
|
@ -70,10 +70,10 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "lib/meta/trait.hpp"
|
#include "lib/meta/trait.hpp"
|
||||||
#include "lib/iter-adapter.hpp"
|
#include "lib/iter-adapter.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <type_traits>
|
#include <type_traits>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -86,7 +86,7 @@ namespace lib {
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A fixed collection of noncopyable polymorphic objects.
|
* A fixed collection of non-copyable polymorphic objects.
|
||||||
*
|
*
|
||||||
* All child objects reside in a common chunk of storage
|
* All child objects reside in a common chunk of storage
|
||||||
* and are owned and managed by this collection holder.
|
* and are owned and managed by this collection holder.
|
||||||
|
|
@ -99,7 +99,7 @@ namespace lib {
|
||||||
, size_t siz = sizeof(I)
|
, size_t siz = sizeof(I)
|
||||||
>
|
>
|
||||||
class ScopedCollection
|
class ScopedCollection
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
@ -110,7 +110,7 @@ namespace lib {
|
||||||
* @note doesn't manage the Child
|
* @note doesn't manage the Child
|
||||||
*/
|
*/
|
||||||
class ElementHolder
|
class ElementHolder
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
|
|
||||||
mutable char buf_[siz];
|
mutable char buf_[siz];
|
||||||
|
|
|
||||||
|
|
@ -49,12 +49,12 @@
|
||||||
|
|
||||||
#include "include/logging.h"
|
#include "include/logging.h"
|
||||||
#include "lib/iter-adapter-ptr-deref.hpp"
|
#include "lib/iter-adapter-ptr-deref.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
#include "lib/util.hpp"
|
#include "lib/util.hpp"
|
||||||
|
|
||||||
#include <vector>
|
#include <vector>
|
||||||
#include <algorithm>
|
#include <algorithm>
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
|
|
||||||
|
|
||||||
namespace lib {
|
namespace lib {
|
||||||
|
|
@ -70,7 +70,7 @@ namespace lib {
|
||||||
template<class T>
|
template<class T>
|
||||||
class ScopedPtrVect
|
class ScopedPtrVect
|
||||||
: std::vector<T*>,
|
: std::vector<T*>,
|
||||||
boost::noncopyable
|
util::NonCopyable
|
||||||
{
|
{
|
||||||
typedef std::vector<T*> _Vec;
|
typedef std::vector<T*> _Vec;
|
||||||
typedef typename _Vec::iterator VIter;
|
typedef typename _Vec::iterator VIter;
|
||||||
|
|
|
||||||
|
|
@ -34,8 +34,8 @@
|
||||||
#define COMMON_SEARCHPATH_H
|
#define COMMON_SEARCHPATH_H
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <boost/filesystem.hpp>
|
#include <boost/filesystem.hpp>
|
||||||
#include <boost/regex.hpp>
|
#include <boost/regex.hpp>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
@ -74,7 +74,7 @@ namespace lib {
|
||||||
* @note #next picks the current component and advances the iteration.
|
* @note #next picks the current component and advances the iteration.
|
||||||
*/
|
*/
|
||||||
class SearchPathSplitter
|
class SearchPathSplitter
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
string pathSpec_;
|
string pathSpec_;
|
||||||
sregex_iterator pos_,
|
sregex_iterator pos_,
|
||||||
|
|
|
||||||
|
|
@ -42,8 +42,7 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
|
|
||||||
|
|
||||||
namespace lib {
|
namespace lib {
|
||||||
|
|
@ -56,7 +55,7 @@ namespace lib {
|
||||||
*/
|
*/
|
||||||
template<class TY>
|
template<class TY>
|
||||||
class AccessAsReference
|
class AccessAsReference
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
TY* obj_;
|
TY* obj_;
|
||||||
|
|
||||||
|
|
@ -106,7 +105,7 @@ namespace lib {
|
||||||
* @param Accessor how to implement the static instance access
|
* @param Accessor how to implement the static instance access
|
||||||
*/
|
*/
|
||||||
template< class TY
|
template< class TY
|
||||||
, class B = boost::noncopyable
|
, class B = util::NonCopyable
|
||||||
, template<class> class Access = singleton::AccessAsReference
|
, template<class> class Access = singleton::AccessAsReference
|
||||||
>
|
>
|
||||||
struct SingletonRef
|
struct SingletonRef
|
||||||
|
|
|
||||||
|
|
@ -50,8 +50,8 @@
|
||||||
|
|
||||||
#include "lib/sync.hpp"
|
#include "lib/sync.hpp"
|
||||||
#include "lib/symbol.hpp"
|
#include "lib/symbol.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <unordered_set>
|
#include <unordered_set>
|
||||||
#include <utility>
|
#include <utility>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
@ -72,7 +72,7 @@ namespace lib {
|
||||||
*/
|
*/
|
||||||
class SymbolTable
|
class SymbolTable
|
||||||
: public Sync<>
|
: public Sync<>
|
||||||
, boost::noncopyable
|
, util::NonCopyable
|
||||||
{
|
{
|
||||||
std::unordered_set<string> table_;
|
std::unordered_set<string> table_;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -68,13 +68,13 @@
|
||||||
#define LIB_SYNC_H
|
#define LIB_SYNC_H
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "lib/util.hpp"
|
#include "lib/util.hpp"
|
||||||
|
|
||||||
extern "C" {
|
extern "C" {
|
||||||
#include "lib/lockerror.h"
|
#include "lib/lockerror.h"
|
||||||
}
|
}
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <pthread.h>
|
#include <pthread.h>
|
||||||
#include <cerrno>
|
#include <cerrno>
|
||||||
#include <ctime>
|
#include <ctime>
|
||||||
|
|
@ -440,7 +440,7 @@ namespace lib {
|
||||||
* scoped object to control the actual locking.
|
* scoped object to control the actual locking.
|
||||||
*/
|
*/
|
||||||
class Lock
|
class Lock
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
Monitor& mon_;
|
Monitor& mon_;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -35,7 +35,6 @@
|
||||||
#include "lib/depend.hpp"
|
#include "lib/depend.hpp"
|
||||||
#include "lib/meta/duck-detector.hpp"
|
#include "lib/meta/duck-detector.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <memory>
|
#include <memory>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -100,7 +99,7 @@ namespace test{
|
||||||
*/
|
*/
|
||||||
template<class TYPE>
|
template<class TYPE>
|
||||||
struct Depend4Test
|
struct Depend4Test
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
typedef typename ServiceInterface<TYPE>::Type Interface;
|
typedef typename ServiceInterface<TYPE>::Type Interface;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -29,8 +29,8 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <algorithm>
|
#include <algorithm>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -39,7 +39,7 @@ namespace test{
|
||||||
|
|
||||||
|
|
||||||
class Dummy
|
class Dummy
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
int val_;
|
int val_;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -30,6 +30,7 @@
|
||||||
#define TESTHELPER_TESTOPTION_H
|
#define TESTHELPER_TESTOPTION_H
|
||||||
|
|
||||||
#include "lib/cmdline.hpp"
|
#include "lib/cmdline.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <iostream>
|
#include <iostream>
|
||||||
|
|
@ -55,7 +56,8 @@ namespace test {
|
||||||
* vector will contain only the remaining
|
* vector will contain only the remaining
|
||||||
* unrecognised parts.
|
* unrecognised parts.
|
||||||
*/
|
*/
|
||||||
class TestOption : private boost::noncopyable
|
class TestOption
|
||||||
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
TestOption (lib::Cmdline& cmdline);
|
TestOption (lib::Cmdline& cmdline);
|
||||||
|
|
|
||||||
|
|
@ -28,6 +28,7 @@
|
||||||
**
|
**
|
||||||
** @todo care for unit test coverage
|
** @todo care for unit test coverage
|
||||||
** @todo WIP-WIP. Maybe add facilities similar to boost::specific_ptr
|
** @todo WIP-WIP. Maybe add facilities similar to boost::specific_ptr
|
||||||
|
** @deprecated C++11 has a `thread_local` storage class...
|
||||||
**/
|
**/
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -36,8 +37,8 @@
|
||||||
|
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
#include <pthread.h>
|
#include <pthread.h>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -54,7 +55,7 @@ namespace lib {
|
||||||
*/
|
*/
|
||||||
template<typename TAR>
|
template<typename TAR>
|
||||||
class ThreadLocalPtr
|
class ThreadLocalPtr
|
||||||
: boost::noncopyable
|
: util::NonCopyable
|
||||||
{
|
{
|
||||||
pthread_key_t key_;
|
pthread_key_t key_;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -62,11 +62,11 @@
|
||||||
#define LIB_TIME_MUTATION_H
|
#define LIB_TIME_MUTATION_H
|
||||||
|
|
||||||
#include "lib/error.hpp"
|
#include "lib/error.hpp"
|
||||||
|
#include "lib/nocopy.hpp"
|
||||||
#include "lib/time/timevalue.hpp"
|
#include "lib/time/timevalue.hpp"
|
||||||
#include "lib/polymorphic-value.hpp"
|
#include "lib/polymorphic-value.hpp"
|
||||||
#include "lib/symbol.hpp"
|
#include "lib/symbol.hpp"
|
||||||
|
|
||||||
#include <boost/noncopyable.hpp>
|
|
||||||
|
|
||||||
|
|
||||||
namespace lib {
|
namespace lib {
|
||||||
|
|
|
||||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue