Public Types | Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
absl::container_internal::raw_hash_set< Policy, Hash, Eq, Alloc >::iterator Class Reference

#include <raw_hash_set.h>

Public Types

using difference_type = typename raw_hash_set::difference_type
 
using iterator_category = std::forward_iterator_tag
 
using pointer = absl::remove_reference_t< reference > *
 
using reference = absl::conditional_t< PolicyTraits::constant_iterators::value, const value_type &, value_type & >
 
using value_type = typename raw_hash_set::value_type
 

Public Member Functions

 iterator ()
 
reference operator* () const
 
iteratoroperator++ ()
 
iterator operator++ (int)
 
pointer operator-> () const
 

Private Member Functions

 iterator (ctrl_t *ctrl)
 
 iterator (ctrl_t *ctrl, slot_type *slot)
 
void skip_empty_or_deleted ()
 

Private Attributes

union {
   slot_type *   slot_
 
}; 
 
ctrl_tctrl_ = nullptr
 

Friends

bool operator!= (const iterator &a, const iterator &b)
 
bool operator== (const iterator &a, const iterator &b)
 
class raw_hash_set
 

Detailed Description

template<class Policy, class Hash, class Eq, class Alloc>
class absl::container_internal::raw_hash_set< Policy, Hash, Eq, Alloc >::iterator

Definition at line 602 of file raw_hash_set.h.

Member Typedef Documentation

◆ difference_type

template<class Policy, class Hash, class Eq, class Alloc>
using absl::container_internal::raw_hash_set< Policy, Hash, Eq, Alloc >::iterator::difference_type = typename raw_hash_set::difference_type

Definition at line 612 of file raw_hash_set.h.

◆ iterator_category

template<class Policy, class Hash, class Eq, class Alloc>
using absl::container_internal::raw_hash_set< Policy, Hash, Eq, Alloc >::iterator::iterator_category = std::forward_iterator_tag

Definition at line 606 of file raw_hash_set.h.

◆ pointer

template<class Policy, class Hash, class Eq, class Alloc>
using absl::container_internal::raw_hash_set< Policy, Hash, Eq, Alloc >::iterator::pointer = absl::remove_reference_t<reference>*

Definition at line 611 of file raw_hash_set.h.

◆ reference

template<class Policy, class Hash, class Eq, class Alloc>
using absl::container_internal::raw_hash_set< Policy, Hash, Eq, Alloc >::iterator::reference = absl::conditional_t<PolicyTraits::constant_iterators::value, const value_type&, value_type&>

Definition at line 610 of file raw_hash_set.h.

◆ value_type

template<class Policy, class Hash, class Eq, class Alloc>
using absl::container_internal::raw_hash_set< Policy, Hash, Eq, Alloc >::iterator::value_type = typename raw_hash_set::value_type

Definition at line 607 of file raw_hash_set.h.

Constructor & Destructor Documentation

◆ iterator() [1/3]

template<class Policy, class Hash, class Eq, class Alloc>
absl::container_internal::raw_hash_set< Policy, Hash, Eq, Alloc >::iterator::iterator ( )
inline

Definition at line 614 of file raw_hash_set.h.

◆ iterator() [2/3]

template<class Policy, class Hash, class Eq, class Alloc>
absl::container_internal::raw_hash_set< Policy, Hash, Eq, Alloc >::iterator::iterator ( ctrl_t ctrl)
inlineprivate

Definition at line 644 of file raw_hash_set.h.

◆ iterator() [3/3]

template<class Policy, class Hash, class Eq, class Alloc>
absl::container_internal::raw_hash_set< Policy, Hash, Eq, Alloc >::iterator::iterator ( ctrl_t ctrl,
slot_type slot 
)
inlineprivate

Definition at line 645 of file raw_hash_set.h.

Member Function Documentation

◆ operator*()

template<class Policy, class Hash, class Eq, class Alloc>
reference absl::container_internal::raw_hash_set< Policy, Hash, Eq, Alloc >::iterator::operator* ( ) const
inline

Definition at line 617 of file raw_hash_set.h.

◆ operator++() [1/2]

template<class Policy, class Hash, class Eq, class Alloc>
iterator& absl::container_internal::raw_hash_set< Policy, Hash, Eq, Alloc >::iterator::operator++ ( )
inline

Definition at line 623 of file raw_hash_set.h.

◆ operator++() [2/2]

template<class Policy, class Hash, class Eq, class Alloc>
iterator absl::container_internal::raw_hash_set< Policy, Hash, Eq, Alloc >::iterator::operator++ ( int  )
inline

Definition at line 630 of file raw_hash_set.h.

◆ operator->()

template<class Policy, class Hash, class Eq, class Alloc>
pointer absl::container_internal::raw_hash_set< Policy, Hash, Eq, Alloc >::iterator::operator-> ( ) const
inline

Definition at line 620 of file raw_hash_set.h.

◆ skip_empty_or_deleted()

template<class Policy, class Hash, class Eq, class Alloc>
void absl::container_internal::raw_hash_set< Policy, Hash, Eq, Alloc >::iterator::skip_empty_or_deleted ( )
inlineprivate

Definition at line 647 of file raw_hash_set.h.

Friends And Related Function Documentation

◆ operator!=

template<class Policy, class Hash, class Eq, class Alloc>
bool operator!= ( const iterator a,
const iterator b 
)
friend

Definition at line 639 of file raw_hash_set.h.

◆ operator==

template<class Policy, class Hash, class Eq, class Alloc>
bool operator== ( const iterator a,
const iterator b 
)
friend

Definition at line 636 of file raw_hash_set.h.

◆ raw_hash_set

template<class Policy, class Hash, class Eq, class Alloc>
friend class raw_hash_set
friend

Definition at line 603 of file raw_hash_set.h.

Member Data Documentation

◆ @16

union { ... }

◆ ctrl_

template<class Policy, class Hash, class Eq, class Alloc>
ctrl_t* absl::container_internal::raw_hash_set< Policy, Hash, Eq, Alloc >::iterator::ctrl_ = nullptr
private

Definition at line 659 of file raw_hash_set.h.

◆ slot_

template<class Policy, class Hash, class Eq, class Alloc>
slot_type* absl::container_internal::raw_hash_set< Policy, Hash, Eq, Alloc >::iterator::slot_

Definition at line 663 of file raw_hash_set.h.


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


abseil_cpp
Author(s):
autogenerated on Mon Feb 28 2022 21:31:23