Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

Click here to view the latest version of this page.
PrevUpHomeNext

unconstrained_set_of Reference

Header "boost/bimap/unconstrained_set_of.hpp" synopsis
unconstrained_set_of Views
Complexity signature
Serialization
namespace boost {
namespace bimaps {


template< class KeyType >
struct unconstrained_set_of;

struct unconstrained_set_of_relation;


} // namespace bimap
} // namespace boost

An unconstrained_set_of set view is a view with no constraints. The use of these kind of view boost the bimap performance but the view can not be accessed. An unconstrained view is an empty class.

namespace boost {
namespace bimaps {
namespace views {

template< -implementation defined parameter list- >
class -implementation defined view name-
{
    // Empty view
};

} // namespace views
} // namespace bimap
} // namespace boost

In the case of a bimap< unconstrained_set_of<Left>, ... >

In the set view:

typedef signature-compatible with relation< Left, ... > key_type;
typedef signature-compatible with relation< Left, ... > value_type;

In the left map view:

typedef  Left  key_type;
typedef  ...   data_type;

typedef signature-compatible with std::pair< Left, ... > value_type;

In the right map view:

typedef  ...  key_type;
typedef  Left data_type;

typedef signature-compatible with std::pair< ... , Left > value_type;

We adopt the scheme outlined in the complexity signature section. An unconstrained view can not be accessed by the user, but the formulas to find the order of an operation for a bimap hold with the following definitions. The complexity signature of a unconstrained_set_of view is:

  • copying: c(n) = 0
  • insertion: i(n) = 0
  • hinted insertion: h(n) = 0
  • deletion: d(n) = 0
  • replacement: r(n) = 0
  • modifying: m(n) = 0

Views cannot be serialized on their own, but only as part of the bimap into which they are embedded. In describing the additional preconditions and guarantees associated to list_of views with respect to serialization of their embedding containers, we use the concepts defined in the bimap serialization section.

  • Requires: No additional requirements to those imposed by the container.
  • Requires: No additional requirements to those imposed by the container.

PrevUpHomeNext