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

映射生成器,对源生成器的每个元素应用函数。 More...

#include <gen.h>

Inheritance diagram for console::gen::Map< Gen, Func >:
console::Generator< Map< Gen, Func >, std::decay< decltype(std::declval< Func >()(std::declval< Gen::iterator::value_type >()))>::type >

Public Member Functions

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

Private Types

using ResultType

Private Attributes

Gen gen
Func func

Additional Inherited Members

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

Detailed Description

template<class Gen, class Func>
class console::gen::Map< Gen, Func >

映射生成器,对源生成器的每个元素应用函数。

Template Parameters
Gen源生成器类型。
Func映射函数类型。

Member Typedef Documentation

◆ ResultType

template<class Gen, class Func>
using console::gen::Map< Gen, Func >::ResultType
private
Initial value:
typename std::decay<decltype(func(gen.current()))>::type
Func func
Definition gen.h:532
Gen gen
Definition gen.h:531

Constructor & Destructor Documentation

◆ Map()

template<class Gen, class Func>
console::gen::Map< Gen, Func >::Map ( Gen g,
Func f )
inline

构造函数。

Parameters
g源生成器。
f映射函数。

Member Function Documentation

◆ advance()

template<class Gen, class Func>
void console::gen::Map< Gen, Func >::advance ( )
inline

向前移动一步。

◆ current()

template<class Gen, class Func>
ResultType console::gen::Map< Gen, Func >::current ( )
inline

获取当前值。

Returns
映射后的值。

◆ done()

template<class Gen, class Func>
bool console::gen::Map< Gen, Func >::done ( )
inline

检查生成器是否已完成。

Returns
如果源生成器已完成则返回true。

Member Data Documentation

◆ func

template<class Gen, class Func>
Func console::gen::Map< Gen, Func >::func
private

◆ gen

template<class Gen, class Func>
Gen console::gen::Map< Gen, Func >::gen
private

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