Py2Cpp 1.6.3; VERSION ${PROJECT_VERSION}
Loading...
Searching...
No Matches
Classes | Public Member Functions | List of all members
py::Generator< T > Class Template Reference

Minimal generator using C++20 coroutines. More...

#include <gen.hpp>

Classes

class  iterator
 
struct  promise_type
 

Public Member Functions

 Generator () noexcept=default
 
 ~Generator ()
 
 Generator (Generator &&other) noexcept
 
Generatoroperator= (Generator &&other) noexcept
 
 Generator (const Generator &)=delete
 
Generatoroperator= (const Generator &)=delete
 
iterator begin ()
 
iterator end () noexcept
 

Detailed Description

template<typename T>
class py::Generator< T >

Minimal generator using C++20 coroutines.

Models a Python-style generator that lazily yields values of type T. Used with co_yield inside a coroutine function.

Supports both value types (Generator<int>) and reference types (Generator<Container&>), using pointer storage to avoid copies.

Template Parameters
TValue type to yield

Constructor & Destructor Documentation

◆ Generator() [1/3]

template<typename T >
py::Generator< T >::Generator ( )
defaultnoexcept

◆ ~Generator()

template<typename T >
py::Generator< T >::~Generator ( )
inline

◆ Generator() [2/3]

template<typename T >
py::Generator< T >::Generator ( Generator< T > &&  other)
inlinenoexcept

◆ Generator() [3/3]

template<typename T >
py::Generator< T >::Generator ( const Generator< T > &  )
delete

Member Function Documentation

◆ begin()

template<typename T >
iterator py::Generator< T >::begin ( )
inline

◆ end()

template<typename T >
iterator py::Generator< T >::end ( )
inlinenoexcept

◆ operator=() [1/2]

template<typename T >
Generator & py::Generator< T >::operator= ( const Generator< T > &  )
delete

◆ operator=() [2/2]

template<typename T >
Generator & py::Generator< T >::operator= ( Generator< T > &&  other)
inlinenoexcept

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