|
605 | 605 | values~(\ref{basic.fundamental}).} |
606 | 606 |
|
607 | 607 | \pnum |
608 | | -The enumerated type \term{enumerated} can be written: |
| 608 | +The enumerated type \tcode{\placeholder{enumerated}} can be written: |
609 | 609 |
|
610 | 610 | \begin{codeblock} |
611 | | -enum @\term{enumerated}@ { @\term{V0}@, @\term{V1}@, @\term{V2}@, @\term{V3}@, ..... }; |
| 611 | +enum @\placeholder{enumerated}@ { @$\tcode{\placeholder{V}}_{0}$@, @$\tcode{\placeholder{V}}_{1}$@, @$\tcode{\placeholder{V}}_{2}$@, @$\tcode{\placeholder{V}}_{3}$@, ..... }; |
612 | 612 |
|
613 | | -inline const @\term{enumerated C0}@ (@\term{V0}@); |
614 | | -inline const @\term{enumerated C1}@ (@\term{V1}@); |
615 | | -inline const @\term{enumerated C2}@ (@\term{V2}@); |
616 | | -inline const @\term{enumerated C3}@ (@\term{V3}@); |
| 613 | +inline const @$\tcode{\placeholder{enumerated C}}_{0}$@(@$\tcode{\placeholder{V}}_{0}$@); |
| 614 | +inline const @$\tcode{\placeholder{enumerated C}}_{1}$@(@$\tcode{\placeholder{V}}_{1}$@); |
| 615 | +inline const @$\tcode{\placeholder{enumerated C}}_{2}$@(@$\tcode{\placeholder{V}}_{2}$@); |
| 616 | +inline const @$\tcode{\placeholder{enumerated C}}_{3}$@(@$\tcode{\placeholder{V}}_{3}$@); |
617 | 617 | ..... |
618 | 618 | \end{codeblock} |
619 | 619 |
|
620 | 620 | \pnum |
621 | | -Here, the names \term{C0}, \term{C1}, etc. represent |
| 621 | +Here, the names $\tcode{\placeholder{C}}_0$, |
| 622 | +$\tcode{\placeholder{C}}_1$, etc.\ represent |
622 | 623 | \term{enumerated elements} |
623 | 624 | for this particular enumerated type. |
624 | 625 | \indextext{type!enumerated}% |
|
642 | 643 |
|
643 | 644 | \begin{codeblock} |
644 | 645 | // For exposition only. |
645 | | -// \tcode{int_type} is an integral type capable of |
646 | | -// representing all values of the bitmask type. |
647 | | -enum @\term{bitmask}@ : int_type { |
648 | | - @\term{V0}@ = 1 << 0, @\term{V1}@ = 1 << 1, @\term{V2}@ = 1 << 2, @\term{V3}@ = 1 << 3, ..... |
| 646 | +// \tcode{int_type} is an integral type capable of representing all values of the bitmask type. |
| 647 | +enum @\placeholder{bitmask}@ : int_type { |
| 648 | + @$\tcode{\placeholder{V}}_{0}$@ = 1 << 0, @$\tcode{\placeholder{V}}_{1}$@ = 1 << 1, @$\tcode{\placeholder{V}}_{2}$@ = 1 << 2, @$\tcode{\placeholder{V}}_{3}$@ = 1 << 3, ..... |
649 | 649 | }; |
650 | 650 |
|
651 | | -inline constexpr @\term{bitmask C0}@(@\term{V0}{}@); |
652 | | -inline constexpr @\term{bitmask C1}@(@\term{V1}{}@); |
653 | | -inline constexpr @\term{bitmask C2}@(@\term{V2}{}@); |
654 | | -inline constexpr @\term{bitmask C3}@(@\term{V3}{}@); |
| 651 | +inline constexpr @$\tcode{\placeholder{bitmask C}}_{0}$@(@$\tcode{\placeholder{V}}_{0}{}$@); |
| 652 | +inline constexpr @$\tcode{\placeholder{bitmask C}}_{1}$@(@$\tcode{\placeholder{V}}_{1}{}$@); |
| 653 | +inline constexpr @$\tcode{\placeholder{bitmask C}}_{2}$@(@$\tcode{\placeholder{V}}_{2}{}$@); |
| 654 | +inline constexpr @$\tcode{\placeholder{bitmask C}}_{3}$@(@$\tcode{\placeholder{V}}_{3}{}$@); |
655 | 655 | ..... |
656 | 656 |
|
657 | 657 | constexpr @\term{bitmask}{}@ operator&(@\term{bitmask}{}@ X, @\term{bitmask}{}@ Y) { |
|
681 | 681 | \end{codeblock} |
682 | 682 |
|
683 | 683 | \pnum |
684 | | -Here, the names \term{C0}, \term{C1}, etc. represent |
| 684 | +Here, the names $\tcode{\placeholder{C}}_0$, |
| 685 | +$\tcode{\placeholder{C}}_1$, etc.\ represent |
685 | 686 | \term{bitmask elements} |
686 | 687 | for this particular bitmask type. |
687 | 688 | \indextext{type!bitmask}% |
688 | | -All such elements have distinct, nonzero values such that, for any pair \term{Ci} |
689 | | -and \term{Cj} where \term{i} != \term{j}, \term{Ci} \& \term{Ci} is nonzero and |
690 | | -\term{Ci} \& \term{Cj} is zero. |
| 689 | +All such elements have distinct, nonzero values such that, for any pair $\tcode{\placeholder{C}}_i$ |
| 690 | +and $\tcode{\placeholder{C}}_j$ where $i \neq j$, \tcode{$\placeholder{C}_i$ \& $\placeholder{C}_i$} is nonzero and |
| 691 | +\tcode{$\placeholder{C}_i$ \& $\placeholder{C}_j$} is zero. |
691 | 692 | \indextext{bitmask!empty}% |
692 | | -Additionally, the value 0 is used to represent an \term{empty bitmask}, in which no |
| 693 | +Additionally, the value \tcode{0} is used to represent an \term{empty bitmask}, in which no |
693 | 694 | bitmask elements are set. |
694 | 695 |
|
695 | 696 | \pnum |
696 | 697 | The following terms apply to objects and values of |
697 | 698 | bitmask types: |
698 | | - |
699 | 699 | \begin{itemize} |
700 | 700 | \item |
701 | 701 | To |
|
0 commit comments