SystemC 3.0.0
Accellera SystemC proof-of-concept library
Classes | Public Types | Public Member Functions | Friends | List of all members
sc_core::sc_vector_iter< ElementType, AccessPolicy > Class Template Reference

#include <sysc/utils/sc_vector.h>

Inheritance diagram for sc_core::sc_vector_iter< ElementType, AccessPolicy >:
Inheritance graph
[legend]
Collaboration diagram for sc_core::sc_vector_iter< ElementType, AccessPolicy >:
Collaboration graph
[legend]

Public Types

typedef std::random_access_iterator_tag iterator_category
 
typedef std::ptrdiff_t difference_type
 
typedef access_policy::type value_type
 
typedef value_typereference
 
typedef value_typepointer
 

Public Member Functions

 sc_vector_iter ()
 
template<typename It , typename = std::enable_if_t<sc_is_more_const_v<element_type, typename It::policy::element_type>>>
 sc_vector_iter (const It &it)
 
this_typeoperator++ ()
 
this_typeoperator-- ()
 
this_type operator++ (int)
 
this_type operator-- (int)
 
this_type operator+ (difference_type n) const
 
this_type operator- (difference_type n) const
 
this_typeoperator+= (difference_type n)
 
this_typeoperator-= (difference_type n)
 
reference operator* () const
 
pointer operator-> () const
 
reference operator[] (difference_type n) const
 
difference_type operator- (const_direct_iterator const &that) const
 
raw_iterator raw () const
 

Friends

class sc_vector< plain_type >
 
template<typename , typename >
class sc_vector_assembly
 
template<typename , typename >
class sc_vector_iter
 

Detailed Description

template<typename ElementType, typename AccessPolicy = sc_direct_access<ElementType>>
class sc_core::sc_vector_iter< ElementType, AccessPolicy >

Definition at line 238 of file sc_vector.h.

Member Typedef Documentation

◆ difference_type

template<typename ElementType , typename AccessPolicy = sc_direct_access<ElementType>>
typedef std::ptrdiff_t sc_core::sc_vector_iter< ElementType, AccessPolicy >::difference_type

Definition at line 284 of file sc_vector.h.

◆ iterator_category

template<typename ElementType , typename AccessPolicy = sc_direct_access<ElementType>>
typedef std::random_access_iterator_tag sc_core::sc_vector_iter< ElementType, AccessPolicy >::iterator_category

Definition at line 283 of file sc_vector.h.

◆ pointer

template<typename ElementType , typename AccessPolicy = sc_direct_access<ElementType>>
typedef value_type* sc_core::sc_vector_iter< ElementType, AccessPolicy >::pointer

Definition at line 287 of file sc_vector.h.

◆ reference

template<typename ElementType , typename AccessPolicy = sc_direct_access<ElementType>>
typedef value_type& sc_core::sc_vector_iter< ElementType, AccessPolicy >::reference

Definition at line 286 of file sc_vector.h.

◆ value_type

template<typename ElementType , typename AccessPolicy = sc_direct_access<ElementType>>
typedef access_policy::type sc_core::sc_vector_iter< ElementType, AccessPolicy >::value_type

Definition at line 285 of file sc_vector.h.

Constructor & Destructor Documentation

◆ sc_vector_iter() [1/2]

template<typename ElementType , typename AccessPolicy = sc_direct_access<ElementType>>
sc_core::sc_vector_iter< ElementType, AccessPolicy >::sc_vector_iter ( )
inline

Definition at line 289 of file sc_vector.h.

◆ sc_vector_iter() [2/2]

template<typename ElementType , typename AccessPolicy = sc_direct_access<ElementType>>
template<typename It , typename = std::enable_if_t<sc_is_more_const_v<element_type, typename It::policy::element_type>>>
sc_core::sc_vector_iter< ElementType, AccessPolicy >::sc_vector_iter ( const It &  it)
inline

Definition at line 302 of file sc_vector.h.

Member Function Documentation

◆ operator*()

template<typename ElementType , typename AccessPolicy = sc_direct_access<ElementType>>
reference sc_core::sc_vector_iter< ElementType, AccessPolicy >::operator* ( ) const
inline

Definition at line 322 of file sc_vector.h.

◆ operator+()

template<typename ElementType , typename AccessPolicy = sc_direct_access<ElementType>>
this_type sc_core::sc_vector_iter< ElementType, AccessPolicy >::operator+ ( difference_type  n) const
inline

Definition at line 313 of file sc_vector.h.

◆ operator++() [1/2]

template<typename ElementType , typename AccessPolicy = sc_direct_access<ElementType>>
this_type & sc_core::sc_vector_iter< ElementType, AccessPolicy >::operator++ ( )
inline

Definition at line 307 of file sc_vector.h.

◆ operator++() [2/2]

template<typename ElementType , typename AccessPolicy = sc_direct_access<ElementType>>
this_type sc_core::sc_vector_iter< ElementType, AccessPolicy >::operator++ ( int  )
inline

Definition at line 309 of file sc_vector.h.

◆ operator+=()

template<typename ElementType , typename AccessPolicy = sc_direct_access<ElementType>>
this_type & sc_core::sc_vector_iter< ElementType, AccessPolicy >::operator+= ( difference_type  n)
inline

Definition at line 318 of file sc_vector.h.

◆ operator-() [1/2]

template<typename ElementType , typename AccessPolicy = sc_direct_access<ElementType>>
difference_type sc_core::sc_vector_iter< ElementType, AccessPolicy >::operator- ( const_direct_iterator const &  that) const
inline

Definition at line 330 of file sc_vector.h.

◆ operator-() [2/2]

template<typename ElementType , typename AccessPolicy = sc_direct_access<ElementType>>
this_type sc_core::sc_vector_iter< ElementType, AccessPolicy >::operator- ( difference_type  n) const
inline

Definition at line 315 of file sc_vector.h.

◆ operator--() [1/2]

template<typename ElementType , typename AccessPolicy = sc_direct_access<ElementType>>
this_type & sc_core::sc_vector_iter< ElementType, AccessPolicy >::operator-- ( )
inline

Definition at line 308 of file sc_vector.h.

◆ operator--() [2/2]

template<typename ElementType , typename AccessPolicy = sc_direct_access<ElementType>>
this_type sc_core::sc_vector_iter< ElementType, AccessPolicy >::operator-- ( int  )
inline

Definition at line 310 of file sc_vector.h.

◆ operator-=()

template<typename ElementType , typename AccessPolicy = sc_direct_access<ElementType>>
this_type & sc_core::sc_vector_iter< ElementType, AccessPolicy >::operator-= ( difference_type  n)
inline

Definition at line 319 of file sc_vector.h.

◆ operator->()

template<typename ElementType , typename AccessPolicy = sc_direct_access<ElementType>>
pointer sc_core::sc_vector_iter< ElementType, AccessPolicy >::operator-> ( ) const
inline

Definition at line 324 of file sc_vector.h.

◆ operator[]()

template<typename ElementType , typename AccessPolicy = sc_direct_access<ElementType>>
reference sc_core::sc_vector_iter< ElementType, AccessPolicy >::operator[] ( difference_type  n) const
inline

Definition at line 326 of file sc_vector.h.

◆ raw()

template<typename ElementType , typename AccessPolicy = sc_direct_access<ElementType>>
raw_iterator sc_core::sc_vector_iter< ElementType, AccessPolicy >::raw ( ) const
inline

Definition at line 333 of file sc_vector.h.

Friends And Related Function Documentation

◆ sc_vector< plain_type >

template<typename ElementType , typename AccessPolicy = sc_direct_access<ElementType>>
friend class sc_vector< plain_type >
friend

Definition at line 249 of file sc_vector.h.

◆ sc_vector_assembly

template<typename ElementType , typename AccessPolicy = sc_direct_access<ElementType>>
template<typename , typename >
friend class sc_vector_assembly
friend

Definition at line 252 of file sc_vector.h.

◆ sc_vector_iter

template<typename ElementType , typename AccessPolicy = sc_direct_access<ElementType>>
template<typename , typename >
friend class sc_vector_iter
friend

Definition at line 253 of file sc_vector.h.


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