<<<<<<< .working ======= >>>>>>> .merge-right.r57125
Boost C++ Libraries Home Libraries People FAQ More

PrevUpHomeNext

Forward Sequence <<<<<<< .working

Description
=======
Description
>>>>>>> .merge-right.r57125

A Forward Sequence is a Sequence whose elements are arranged in a definite order. The ordering is guaranteed not to change from iteration to iteration. The requirement of a definite ordering allows the definition of element-by-element equality (if the container's element type is Equality Comparable) and of lexicographical ordering (if the container's element type is LessThan Comparable).

Notation

s

A Forward Sequence

S

A Forward Sequence type

o

An arbitrary object

e

A Sequence element

<<<<<<< .working
Valid =======
Valid >>>>>>> .merge-right.r57125 Expressions

For any Forward Sequence the following expressions must be valid:

Expression

Return type

Type Requirements

Runtime Complexity

begin(s)

Forward Iterator

Constant

end(s)

Forward Iterator

Constant

size(s)

MPL Integral Constant. Convertible to int.

Constant

empty(s)

MPL Boolean Constant. Convertible to bool.

Constant

front(s)

Any type

Constant

front(s) = o

Any type

s is mutable and e = o, where e is the first element in the sequence, is a valid expression.

Constant

<<<<<<< .working
Result =======
Result >>>>>>> .merge-right.r57125 Type Expressions

Expression

Compile Time Complexity

result_of::begin<S>::type

Amortized constant time

result_of::end<S>::type

Amortized constant time

result_of::size<S>::type

Unspecified

result_of::empty<S>::type

Constant time

result_of::front<S>::type

Amortized constant time

<<<<<<< .working
Expression =======
Expression >>>>>>> .merge-right.r57125 Semantics

Expression

Semantics

begin(s)

An iterator to the first element of the sequence; see begin.

end(s)

A past-the-end iterator to the sequence; see end.

size(s)

The size of the sequence; see size.

empty(s)

A boolean Integral Constant c such that c::value == true if and only if the sequence is empty; see empty.

front(s)

The first element in the sequence; see front.

<<<<<<< .working
Invariants
=======
Invariants
>>>>>>> .merge-right.r57125

For any Forward Sequence s the following invariants always hold:

<<<<<<< .working
Models

PrevUpHomeNext