RESTinio

Public Member Functions | Private Types | Private Attributes | List of all members
restinio::easy_parser::impl::produce_t< Target_Type, Subitems_Tuple > Class Template Reference

A template for producing a value of specific type of a sequence of entities from the input stream. More...

`#include <easy_parser.hpp>`

Inheritance diagram for restinio::easy_parser::impl::produce_t< Target_Type, Subitems_Tuple >:

## Public Member Functions
| produce_t (Subitems_Tuple &&subitems)
RESTINIO_NODISCARD expected_t< Target_Type, parse_error_t > | try_parse (source_t &from)

## Private Types
using | value_wrapper_t = result_value_wrapper< Target_Type >

## Private Attributes
Subitems_Tuple | m_subitems

## Additional Inherited Members
Public Types inherited from restinio::easy_parser::impl::producer_tag< Target_Type >
using | result_type = Target_Type
Static Public Attributes inherited from restinio::easy_parser::impl::producer_tag< Target_Type >
static constexpr entity_type_t | entity_type

## Detailed Description

template<typename Target_Type, typename Subitems_Tuple>
class restinio::easy_parser::impl::produce_t< Target_Type, Subitems_Tuple >

A template for producing a value of specific type of a sequence of entities from the input stream.

Creates a new empty object of type Target_Type in `try_parse` and then call `try_process` methods for every subitems. A reference to that new object is passed to every `try_process` call.

Template Parameters

  Target_Type | the type of value to be produced.
  Subitems_Tuple | the type of std::tuple with items for every clause to be checked.

Since
  v.0.6.1

Definition at line 2009 of file easy_parser.hpp.

## Member Typedef Documentation

## ◆ value_wrapper_t

template<typename Target_Type , typename Subitems_Tuple >

using restinio::easy_parser::impl::produce_t< Target_Type, Subitems_Tuple >::value_wrapper_t = result_value_wrapper< Target_Type >
| private

Definition at line 2011 of file easy_parser.hpp.

## Constructor & Destructor Documentation

## ◆ produce_t()

template<typename Target_Type , typename Subitems_Tuple >

restinio::easy_parser::impl::produce_t< Target_Type, Subitems_Tuple >::produce_t | ( | Subitems_Tuple && | subitems | ) |
| inline

Definition at line 2016 of file easy_parser.hpp.

## Member Function Documentation

## ◆ try_parse()

template<typename Target_Type , typename Subitems_Tuple >

RESTINIO_NODISCARD expected_t< Target_Type, parse_error_t > restinio::easy_parser::impl::produce_t< Target_Type, Subitems_Tuple >::try_parse | ( | source_t & | from | ) |
| inline

Definition at line 2023 of file easy_parser.hpp.

## Member Data Documentation

## ◆ m_subitems

template<typename Target_Type , typename Subitems_Tuple >

Subitems_Tuple restinio::easy_parser::impl::produce_t< Target_Type, Subitems_Tuple >::m_subitems
| private

Definition at line 2013 of file easy_parser.hpp.

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

- restinio/helpers/easy_parser.hpp