Public Types | Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | Friends | List of all members
sol::pairs_iterator Class Reference

#include <sol.hpp>

Public Types

using const_pointer = value_type const *
 
using const_reference = const value_type &
 
using difference_type = std::ptrdiff_t
 
using iterator_category = std::input_iterator_tag
 
using key_type = object
 
using mapped_type = object
 
using pointer = value_type *
 
using reference = value_type &
 
using value_type = std::pair< object, object >
 

Public Member Functions

std::ptrdiff_t index () const
 
const_reference operator* () const noexcept
 
reference operator* () noexcept
 
pairs_iteratoroperator++ ()
 
pairs_iteratoroperator= (const pairs_iterator &)=delete
 
pairs_iteratoroperator= (pairs_iterator &&right) noexcept
 
 pairs_iterator () noexcept
 
 pairs_iterator (const pairs_iterator &)=delete
 
template<typename Source >
 pairs_iterator (const Source &source_) noexcept
 
 pairs_iterator (pairs_iterator &&right) noexcept
 
 ~pairs_iterator ()
 

Private Member Functions

void m_clear () noexcept
 

Private Attributes

std::pair< object, objectm_cached_key_value_pair
 
int m_iteration_index
 
int m_key_index
 
lua_Statem_L
 
protected_function m_next_function_ref
 
sol::reference m_table_ref
 

Static Private Attributes

static constexpr int empty_key_index = -1
 

Friends

bool operator!= (const pairs_iterator &left, const pairs_iterator &right) noexcept
 
bool operator!= (const pairs_iterator &left, const pairs_sentinel &) noexcept
 
bool operator!= (const pairs_sentinel &, const pairs_iterator &left) noexcept
 
bool operator== (const pairs_iterator &left, const pairs_iterator &right) noexcept
 
bool operator== (const pairs_iterator &left, const pairs_sentinel &) noexcept
 
bool operator== (const pairs_sentinel &, const pairs_iterator &left) noexcept
 

Detailed Description

Definition at line 25195 of file sol.hpp.

Member Typedef Documentation

◆ const_pointer

Definition at line 25206 of file sol.hpp.

◆ const_reference

Definition at line 25208 of file sol.hpp.

◆ difference_type

using sol::pairs_iterator::difference_type = std::ptrdiff_t

Definition at line 25204 of file sol.hpp.

◆ iterator_category

using sol::pairs_iterator::iterator_category = std::input_iterator_tag

Definition at line 25203 of file sol.hpp.

◆ key_type

Definition at line 25200 of file sol.hpp.

◆ mapped_type

Definition at line 25201 of file sol.hpp.

◆ pointer

Definition at line 25205 of file sol.hpp.

◆ reference

Definition at line 25207 of file sol.hpp.

◆ value_type

Definition at line 25202 of file sol.hpp.

Constructor & Destructor Documentation

◆ pairs_iterator() [1/4]

sol::pairs_iterator::pairs_iterator ( )
inlinenoexcept

Definition at line 25210 of file sol.hpp.

◆ pairs_iterator() [2/4]

sol::pairs_iterator::pairs_iterator ( const pairs_iterator )
delete

◆ pairs_iterator() [3/4]

sol::pairs_iterator::pairs_iterator ( pairs_iterator &&  right)
inlinenoexcept

Definition at line 25222 of file sol.hpp.

◆ pairs_iterator() [4/4]

template<typename Source >
sol::pairs_iterator::pairs_iterator ( const Source &  source_)
inlinenoexcept

Definition at line 25244 of file sol.hpp.

◆ ~pairs_iterator()

sol::pairs_iterator::~pairs_iterator ( )
inline

Definition at line 25372 of file sol.hpp.

Member Function Documentation

◆ index()

std::ptrdiff_t sol::pairs_iterator::index ( ) const
inline

Definition at line 25336 of file sol.hpp.

◆ m_clear()

void sol::pairs_iterator::m_clear ( )
inlineprivatenoexcept

Definition at line 25379 of file sol.hpp.

◆ operator*() [1/2]

const_reference sol::pairs_iterator::operator* ( ) const
inlinenoexcept

Definition at line 25340 of file sol.hpp.

◆ operator*() [2/2]

reference sol::pairs_iterator::operator* ( )
inlinenoexcept

Definition at line 25344 of file sol.hpp.

◆ operator++()

pairs_iterator& sol::pairs_iterator::operator++ ( )
inline

Definition at line 25302 of file sol.hpp.

◆ operator=() [1/2]

pairs_iterator& sol::pairs_iterator::operator= ( const pairs_iterator )
delete

◆ operator=() [2/2]

pairs_iterator& sol::pairs_iterator::operator= ( pairs_iterator &&  right)
inlinenoexcept

Definition at line 25232 of file sol.hpp.

Friends And Related Function Documentation

◆ operator!= [1/3]

bool operator!= ( const pairs_iterator left,
const pairs_iterator right 
)
friend

Definition at line 25352 of file sol.hpp.

◆ operator!= [2/3]

bool operator!= ( const pairs_iterator left,
const pairs_sentinel  
)
friend

Definition at line 25360 of file sol.hpp.

◆ operator!= [3/3]

bool operator!= ( const pairs_sentinel ,
const pairs_iterator left 
)
friend

Definition at line 25368 of file sol.hpp.

◆ operator== [1/3]

bool operator== ( const pairs_iterator left,
const pairs_iterator right 
)
friend

Definition at line 25348 of file sol.hpp.

◆ operator== [2/3]

bool operator== ( const pairs_iterator left,
const pairs_sentinel  
)
friend

Definition at line 25356 of file sol.hpp.

◆ operator== [3/3]

bool operator== ( const pairs_sentinel ,
const pairs_iterator left 
)
friend

Definition at line 25364 of file sol.hpp.

Member Data Documentation

◆ empty_key_index

constexpr int sol::pairs_iterator::empty_key_index = -1
inlinestaticconstexprprivate

Definition at line 25197 of file sol.hpp.

◆ m_cached_key_value_pair

std::pair<object, object> sol::pairs_iterator::m_cached_key_value_pair
private

Definition at line 25386 of file sol.hpp.

◆ m_iteration_index

int sol::pairs_iterator::m_iteration_index
private

Definition at line 25388 of file sol.hpp.

◆ m_key_index

int sol::pairs_iterator::m_key_index
private

Definition at line 25387 of file sol.hpp.

◆ m_L

lua_State* sol::pairs_iterator::m_L
private

Definition at line 25383 of file sol.hpp.

◆ m_next_function_ref

protected_function sol::pairs_iterator::m_next_function_ref
private

Definition at line 25384 of file sol.hpp.

◆ m_table_ref

sol::reference sol::pairs_iterator::m_table_ref
private

Definition at line 25385 of file sol.hpp.


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


plotjuggler
Author(s): Davide Faconti
autogenerated on Mon Nov 11 2024 03:23:53