Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: downloads/boost_1_33_1/libs/mpl/doc/src/refmanual/ExtensibleAssociativeSeq.rst @ 12

Last change on this file since 12 was 12, checked in by landauf, 18 years ago

added boost

File size: 4.7 KB

Extensible Associative Sequence

Description

An |Extensible Associative Sequence| is an |Associative Sequence| that supports insertion and removal of elements. In contrast to |Extensible Sequence|, |Extensible Associative Sequence| does not provide a mechanism for inserting an element at a specific position.

Expression requirements

|In the following table...| s is an |Associative Sequence|, pos is an iterator into s, and x and k are arbitrary types.

In addition to the |Associative Sequence| requirements, the following must be met:

Expression Type Complexity
insert<s,x>::type |Extensible Associative Sequence| Amortized constant time
insert<s,pos,x>::type |Extensible Associative Sequence| Amortized constant time
erase_key<s,k>::type |Extensible Associative Sequence| Amortized constant time
erase<s,pos>::type |Extensible Associative Sequence| Amortized constant time
clear<s>::type |Extensible Associative Sequence| Amortized constant time

Expression semantics

|Semantics disclaimer...| |Associative Sequence|.

Expression Semantics
insert<s,x>::type

Inserts x into s; the resulting sequence r is equivalent to s except that

at< r, key_type<s,x>::type >::type

is identical to value_type<s,x>::type; see |insert|.

insert<s,pos,x>::type Equivalent to insert<s,x>::type; pos is ignored; see |insert|.
erase_key<s,k>::type Erases elements in s associated with the key k; the resulting sequence r is equivalent to s except that has_key<r,k>::value == false; see |erase_key|.
erase<s,pos>::type Erases the element at a specific position; equivalent to erase_key<s, deref<pos>::type >::type; see |erase|.
clear<s>::type An empty sequence concept-identical to s; see |clear|.

Models

Docutils System Messages

??????????????????????????
Note: See TracBrowser for help on using the repository browser.