Quick Links:

bal | bbl | bdl | bsl

Public Types | Public Member Functions

bslalg::BidirectionalNode< VALUE > Class Template Reference

#include <bslalg_bidirectionalnode.h>

Inheritance diagram for bslalg::BidirectionalNode< VALUE >:
bslalg::BidirectionalLink

List of all members.

Public Types

typedef VALUE ValueType

Public Member Functions

ValueTypevalue ()
const ValueTypevalue () const
void setNextLink (BidirectionalLink *next)
void setPreviousLink (BidirectionalLink *previous)
void reset ()
BidirectionalLinknextLink () const
BidirectionalLinkpreviousLink () const

Detailed Description

template<class VALUE>
class bslalg::BidirectionalNode< VALUE >

This POD-like class describes a node suitable for use in a doubly-linked list of values of the template parameter type VALUE. This class is a "POD-like" to facilitate efficient allocation and use in the context of a container implementation. In order to meet the essential requirements of a POD type, this class does not define a constructor or destructor. The manipulator, value, returns a modifiable reference to d_value so that it may be constructed in-place by the appropriate bsl::allocator_traits object.

See Component bslalg_bidirectionalnode


Member Typedef Documentation

template<class VALUE >
typedef VALUE bslalg::BidirectionalNode< VALUE >::ValueType

payload type


Member Function Documentation

template<class VALUE >
ValueType& bslalg::BidirectionalNode< VALUE >::value (  ) 

Return a reference providing modifiable access to the value held by this object.

template<class VALUE >
const ValueType& bslalg::BidirectionalNode< VALUE >::value (  )  const

Return a reference providing non-modifiable access to the value held by this object.

void bslalg::BidirectionalLink::setNextLink ( BidirectionalLink next  )  [inherited]

Set the successor of this node to be the specified next link.

void bslalg::BidirectionalLink::setPreviousLink ( BidirectionalLink previous  )  [inherited]

Set the predecessor of this node to be the specified prev link.

void bslalg::BidirectionalLink::reset (  )  [inherited]

Set the nextLink and previousLink attributes of this value to 0.

BidirectionalLink* bslalg::BidirectionalLink::nextLink (  )  const [inherited]

Return the address of the next node linked from this node.

BidirectionalLink* bslalg::BidirectionalLink::previousLink (  )  const [inherited]

Return the address of the preceding node linked from this node.


The documentation for this class was generated from the following file: