|
471 | 471 | resulting in a value of some object type
|
472 | 472 | \tcode{T},
|
473 | 473 | called the
|
474 |
| -\term{value type} |
| 474 | +\defn{value type} |
475 | 475 | of the iterator.
|
476 | 476 | An output iterator \tcode{i} has a non-empty set of types that are
|
477 | 477 | \libconcept{indirectly_writable} to the iterator;
|
|
480 | 480 | For every iterator type
|
481 | 481 | \tcode{X},
|
482 | 482 | there is a corresponding signed integer-like type\iref{iterator.concept.winc} called the
|
483 |
| -\term{difference type} |
| 483 | +\defn{difference type} |
484 | 484 | of the iterator.
|
485 | 485 |
|
486 | 486 | \pnum
|
|
559 | 559 | Just as a regular pointer to an array guarantees that there is a pointer value pointing past the last element
|
560 | 560 | of the array, so for any iterator type there is an iterator value that points past the last element of a
|
561 | 561 | corresponding sequence.
|
562 |
| -These values are called |
563 |
| -\term{past-the-end} |
564 |
| -values. |
| 562 | +Such a value is called a \defnadj{past-the-end}{value}. |
565 | 563 | Values of an iterator
|
566 | 564 | \tcode{i}
|
567 | 565 | for which the expression
|
568 | 566 | \tcode{*i}
|
569 | 567 | is defined are called
|
570 |
| -\term{dereferenceable}. |
| 568 | +\defn{dereferenceable}. |
571 | 569 | The library never assumes that past-the-end values are dereferenceable.
|
572 | 570 | Iterators can also have singular values that are not associated with any
|
573 | 571 | sequence.
|
|
597 | 595 |
|
598 | 596 | \pnum
|
599 | 597 | Most of the library's algorithmic templates that operate on data structures have
|
600 |
| -interfaces that use ranges. A \term{range} is an iterator and a \term{sentinel} |
| 598 | +interfaces that use ranges. A \defn{range} is an iterator and a \defn{sentinel} |
601 | 599 | that designate the beginning and end of the computation, or an iterator and a
|
602 | 600 | count that designate the beginning and the number of elements to which the
|
603 | 601 | computation is to be applied.\footnote{The sentinel denoting the end of a range
|
|
647 | 645 | previously obtained from that iterator.
|
648 | 646 |
|
649 | 647 | \pnum
|
650 |
| -An |
651 |
| -\term{invalid} |
652 |
| -iterator is an iterator that may be singular.\footnote{This definition applies to pointers, since pointers are iterators. |
| 648 | +An \defnadj{invalid}{iterator} |
| 649 | +is an iterator that may be singular.\footnote{This definition applies to pointers, since pointers are iterators. |
653 | 650 | The effect of dereferencing an iterator that has been invalidated
|
654 | 651 | is undefined.
|
655 | 652 | }
|
|
1417 | 1414 |
|
1418 | 1415 | \pnum
|
1419 | 1416 | Let \tcode{i} be an object of type \tcode{I}. When \tcode{i} is in the domain of
|
1420 |
| -both pre- and post-increment, \tcode{i} is said to be \term{incrementable}. |
| 1417 | +both pre- and post-increment, \tcode{i} is said to be \defn{incrementable}. |
1421 | 1418 | \tcode{I} models \tcode{\libconcept{weakly_incrementable}<I>} only if
|
1422 | 1419 | \begin{itemize}
|
1423 | 1420 | \item The expressions \tcode{++i} and \tcode{i++} have the same domain.
|
|
2614 | 2611 | argument, so that the function can select the most efficient algorithm at compile time.
|
2615 | 2612 | To facilitate this, the
|
2616 | 2613 | library introduces
|
2617 |
| -\term{category tag} |
| 2614 | +\defn{category tag} |
2618 | 2615 | classes which are used as compile time tags for algorithm selection.
|
2619 | 2616 | They are:
|
2620 | 2617 | \tcode{output_iterator_tag},
|
|
0 commit comments