CBMC
Loading...
Searching...
No Matches
concat_iteratort< first_iteratort, second_iteratort > Struct Template Reference

On increment, increments a first iterator and when the corresponding end iterator is reached, starts to increment a second one. More...

#include <range.h>

Public Types

using difference_type = typename first_iteratort::difference_type
 
using value_type = typename first_iteratort::value_type
 
using pointer = typename first_iteratort::pointer
 
using reference = typename first_iteratort::reference
 
using iterator_category = std::forward_iterator_tag
 

Public Member Functions

bool operator== (const concat_iteratort &other) const
 
bool operator!= (const concat_iteratort &other) const
 
concat_iteratortoperator++ ()
 Preincrement operator.
 
concat_iteratort operator++ (int)
 Postincrement operator.
 
reference operator* () const
 
pointer operator-> () const
 
 concat_iteratort (first_iteratort first_begin, first_iteratort first_end, second_iteratort second_begin)
 

Private Attributes

first_iteratort first_begin
 
first_iteratort first_end
 
second_iteratort second_begin
 

Detailed Description

template<typename first_iteratort, typename second_iteratort>
struct concat_iteratort< first_iteratort, second_iteratort >

On increment, increments a first iterator and when the corresponding end iterator is reached, starts to increment a second one.

Dereference corresponds to dereference on the first iterator if the end is not reached yet, and on the second one otherwise.

Definition at line 196 of file range.h.

Member Typedef Documentation

◆ difference_type

using concat_iteratort< first_iteratort, second_iteratort >::difference_type = typename first_iteratort::difference_type

Definition at line 199 of file range.h.

◆ iterator_category

using concat_iteratort< first_iteratort, second_iteratort >::iterator_category = std::forward_iterator_tag

Definition at line 203 of file range.h.

◆ pointer

Definition at line 201 of file range.h.

◆ reference

Definition at line 202 of file range.h.

◆ value_type

Definition at line 200 of file range.h.

Constructor & Destructor Documentation

◆ concat_iteratort()

Definition at line 252 of file range.h.

Member Function Documentation

◆ operator!=()

◆ operator*()

◆ operator++() [1/2]

Preincrement operator.

Definition at line 221 of file range.h.

◆ operator++() [2/2]

Postincrement operator.

Definition at line 231 of file range.h.

◆ operator->()

◆ operator==()

Member Data Documentation

◆ first_begin

◆ first_end

◆ second_begin


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