IceShard 1
A personal game engine project, with development focused on 2D/2.5D games.
Loading...
Searching...
No Matches
ice::Generator< Result > Class Template Referencefinal

#include <ice/task_generator.hxx>

Classes

struct  GeneratorIterator

Public Types

using ValueType = Result
using PromiseType = ice::GeneratorPromise<ValueType>

Public Member Functions

 Generator (ice::coroutine_handle< PromiseType > coro=nullptr) noexcept
 ~Generator () noexcept
 Generator (Generator const &) noexcept=delete
auto operator= (Generator const &) noexcept=delete
 Generator (Generator &&) noexcept
auto operator= (Generator &&other) noexcept -> Generator &
auto operator co_await () &noexcept
auto operator co_await () &&noexcept
auto begin () noexcept
auto end () noexcept

Member Typedef Documentation

◆ PromiseType

template<typename Result>
using ice::Generator< Result >::PromiseType = ice::GeneratorPromise<ValueType>

◆ ValueType

template<typename Result>
using ice::Generator< Result >::ValueType = Result

Constructor & Destructor Documentation

◆ Generator() [1/3]

template<typename Result>
ice::Generator< Result >::Generator ( ice::coroutine_handle< PromiseType > coro = nullptr)
inlineexplicitnoexcept

◆ ~Generator()

template<typename Result>
ice::Generator< Result >::~Generator ( )
inlinenoexcept

◆ Generator() [2/3]

template<typename Result>
ice::Generator< Result >::Generator ( Generator< Result > const & )
inlinedeletenoexcept

◆ Generator() [3/3]

template<typename Result>
ice::Generator< Result >::Generator ( Generator< Result > && other)
inlinenoexcept

Member Function Documentation

◆ begin()

template<typename Result>
auto ice::Generator< Result >::begin ( )
inlinenoexcept

◆ end()

template<typename Result>
auto ice::Generator< Result >::end ( )
inlinenoexcept

◆ operator co_await() [1/2]

template<typename Result>
auto ice::Generator< Result >::operator co_await ( ) &&
inlinenoexcept

◆ operator co_await() [2/2]

template<typename Result>
auto ice::Generator< Result >::operator co_await ( ) &
inlinenoexcept

◆ operator=() [1/2]

template<typename Result>
auto ice::Generator< Result >::operator= ( Generator< Result > && other) -> Generator &
inlinenoexcept

◆ operator=() [2/2]

template<typename Result>
auto ice::Generator< Result >::operator= ( Generator< Result > const & )
inlinedeletenoexcept

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