Console Library 8.0.0
A header-only library that makes C++ simple
Loading...
Searching...
No Matches
console::gen::Generate< Func > Class Template Reference

生成器,通过反复调用函数生成无限序列。 More...

#include <gen.h>

Inheritance diagram for console::gen::Generate< Func >:
console::Generator< Generate< Func >, decltype(std::declval< Func >()())>

Public Member Functions

 Generate (Func f)
 构造函数。
bool done ()
 检查生成器是否已完成。
decltype(curr) current ()
 获取当前值。
void advance ()
 向前移动一步。
Public Member Functions inherited from console::Generator< Generate< Func >, decltype(std::declval< Func >()())>
iterator iter () const
 获取生成器的迭代器对象。
iterator begin () const
 获取开始迭代器。
iterator end () const
 获取结束迭代器。
bool done ()
 检查生成器是否已完成。
decltype(std::declval< Func >()()) current ()
 获取当前值。
void advance ()
 推进生成器到下一个位置。

Private Attributes

Func func
decltype(func()) curr

Additional Inherited Members

Public Types inherited from console::Generator< Generate< Func >, decltype(std::declval< Func >()())>
typedef decltype(std::declval< Func >()()) value_type
 生成器产生的值类型。

Detailed Description

template<class Func>
class console::gen::Generate< Func >

生成器,通过反复调用函数生成无限序列。

Template Parameters
Func生成函数类型。

Constructor & Destructor Documentation

◆ Generate()

template<class Func>
console::gen::Generate< Func >::Generate ( Func f)
inline

构造函数。

Parameters
f生成函数,每次调用返回一个值。

Member Function Documentation

◆ advance()

template<class Func>
void console::gen::Generate< Func >::advance ( )
inline

向前移动一步。

◆ current()

template<class Func>
decltype(curr) console::gen::Generate< Func >::current ( )
inline

获取当前值。

Returns
调用生成函数返回的值。

◆ done()

template<class Func>
bool console::gen::Generate< Func >::done ( )
inline

检查生成器是否已完成。

Returns
始终返回false(无限生成)。

Member Data Documentation

◆ curr

template<class Func>
decltype(func()) console::gen::Generate< Func >::curr
private

◆ func

template<class Func>
Func console::gen::Generate< Func >::func
private

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