Clementine
Public Types | Public Member Functions | Friends | List of all members
entt::meta_sequence_container::meta_iterator Class Reference

Opaque iterator for meta sequence containers. More...

#include <entt.hpp>

Public Types

using difference_type = std::ptrdiff_t
 Signed integer type.
 
using value_type = meta_any
 Type of elements returned by the iterator.
 
using pointer = void
 Pointer type, void on purpose.
 
using reference = value_type
 Reference type, it is not an actual reference.
 
using iterator_category = std::input_iterator_tag
 Iterator category.
 

Public Member Functions

 meta_iterator () ENTT_NOEXCEPT=default
 Default constructor.
 
template<typename It >
 meta_iterator (It iter)
 Constructs a meta iterator from a given iterator. More...
 
meta_iteratoroperator++ () ENTT_NOEXCEPT
 Pre-increment operator. More...
 
meta_iterator operator++ (int) ENTT_NOEXCEPT
 Post-increment operator. More...
 
bool operator== (const meta_iterator &other) const ENTT_NOEXCEPT
 Checks if two meta iterators refer to the same element. More...
 
bool operator!= (const meta_iterator &other) const ENTT_NOEXCEPT
 Checks if two meta iterators refer to the same element. More...
 
reference operator* () const
 Indirection operator. More...
 
 operator bool () const ENTT_NOEXCEPT
 Returns false if an iterator is invalid, true otherwise. More...
 

Friends

class meta_sequence_container
 A meta sequence container can access the underlying iterator.
 

Detailed Description

Opaque iterator for meta sequence containers.

Constructor & Destructor Documentation

◆ meta_iterator()

template<typename It >
entt::meta_sequence_container::meta_iterator::meta_iterator ( It  iter)
inline

Constructs a meta iterator from a given iterator.

Template Parameters
ItType of actual iterator with which to build the meta iterator.
Parameters
iterThe actual iterator with which to build the meta iterator.

Member Function Documentation

◆ operator bool()

entt::meta_sequence_container::meta_iterator::operator bool ( ) const
inlineexplicit

Returns false if an iterator is invalid, true otherwise.

Returns
False if the iterator is invalid, true otherwise.

◆ operator!=()

bool entt::meta_sequence_container::meta_iterator::operator!= ( const meta_iterator other) const
inline

Checks if two meta iterators refer to the same element.

Parameters
otherThe meta iterator with which to compare.
Returns
False if the two meta iterators refer to the same element, true otherwise.

◆ operator*()

reference entt::meta_sequence_container::meta_iterator::operator* ( ) const
inline

Indirection operator.

Returns
The element to which the meta pointer points.

◆ operator++() [1/2]

meta_iterator& entt::meta_sequence_container::meta_iterator::operator++ ( )
inline

Pre-increment operator.

Returns
This iterator.

◆ operator++() [2/2]

meta_iterator entt::meta_sequence_container::meta_iterator::operator++ ( int  )
inline

Post-increment operator.

Returns
This iterator.

◆ operator==()

bool entt::meta_sequence_container::meta_iterator::operator== ( const meta_iterator other) const
inline

Checks if two meta iterators refer to the same element.

Parameters
otherThe meta iterator with which to compare.
Returns
True if the two meta iterators refer to the same element, false otherwise.

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