Category: adaptors |
Component type: type |
The polymorphic_view
is a tranform_view
where the container objects are pointers, and the transformation is
dereference. The properties of any
polymorphic_view
instance depend on the properties of
the container template parameter. The interface of
polymorphic_view
adapts itself [1] to the referenced
container, if this is one of Container, Forward Container, Reversible
Container, Random Access Container, Sequence.
The polymorphic_view
presents transformed values, by
applying the operator*() transformation to the contents of the
iterators. Transformation is only applied in presenting the elements,
the container's elements themselves are not altered.
The properties of the order of elements are the same as those provided by the underlying container, as is the validity of more than one active iterators at any one time.
A polymorphic_view
owns its referenced container, if
its base template parameter is aggregated_ownership,
it
merely references its container, if the base template
parameter is referenced_ownership.
Parameter |
Description |
Default |
container |
The view's container type: the type of container referenced by this view |
|
|
The view's const tag: either |
|
base |
The view's ownership type: the base class that determines if the view references or owns the container |
referenced_ownership |
Defined in the header polymorphic_view.hpp.
Member |
Where defined |
Description |
|
The type * |
|
|
The type of the referenced container. |
|
|
Pointer to |
|
|
|
|
|
|
|
|
An unsigned integral type. |
|
|
A signed integral type. |
|
|
Iterator used to iterate through the view. |
|
|
Const iterator used to iterate through the view. |
|
|
Iterator used to iterate backwards through a container. |
|
|
Const iterator used to iterate backwards through a container. |
|
|
Returns an iterator pointing to the begin of the view. |
|
|
Returns an iterator pointing to the end of the view. |
|
|
Returns a const_iterator pointing to the begin of the view. |
|
|
Returns a const_iterator pointing to the end of the view. |
|
|
Valid for reversible
container's only. Returns a |
|
|
Valid for reversible
container's only. Returns a |
|
|
Valid for reversible
container's only. Returns a |
|
|
Valid for reversible
container's only. Returns a |
|
|
Returns a |
|
|
Returns a |
|
|
Returns a |
|
|
Returns a |
|
|
Call pop_front on the underlying container. |
|
|
Call pop_back on the underlying container. |
|
|
Returns a |
|
|
Returns a |
|
|
Returns a |
|
|
Returns a |
|
|
Returns the size of the view. |
|
|
Returns the largest possible size of the view. |
|
|
true if the view's size is 0. |
|
|
Creates an empty view. |
|
|
Creates a view of given container. |
|
|
Swaps the two views. Iterators are invalidated by this operation. For referencing views, the containers themselves are not swapped. |
|
|
Tests two views for equality. This is a global function, not a member function. Views may be equal even if their referenced containers are not. |
|
|
Lexicographical comparison. This is a global function, not a member function. |
VTL Home
Copyright
© 1999 Konrad-Zuse-Zentrum für Informationstechnik Berlin & Gary Powell All Rights Reserved.