nil::crypto3::accumulators::detail::sparse_impl< T > Struct Template Reference

#include <sparse.hpp>

+ Inheritance diagram for nil::crypto3::accumulators::detail::sparse_impl< T >:
+ Collaboration diagram for nil::crypto3::accumulators::detail::sparse_impl< T >:

Public Types

typedef std::vector< std::size_t > indicies_type
 
typedef std::pair< value_type, std::pair< indicies_type, std::vector< T > > > result_type
 
typedef T::value_type value_type
 

Public Member Functions

template<typename ArgumentPack >
void operator() (const ArgumentPack &args)
 
result_type result (boost::accumulators::dont_care) const
 
template<typename Args >
 sparse_impl (const Args &args)
 

Protected Member Functions

template<typename SinglePassRange >
result_type resolve_type (const SinglePassRange r, std::size_t offset)
 

Protected Attributes

value_type accumulated_value
 
std::size_t domain_size_
 
bool in_block
 
indicies_type indices
 
std::vector< value_typevalues
 

Member Typedef Documentation

◆ indicies_type

template<typename T >
typedef std::vector<std::size_t> nil::crypto3::accumulators::detail::sparse_impl< T >::indicies_type

◆ result_type

template<typename T >
typedef std::pair<value_type, std::pair<indicies_type, std::vector<T> > > nil::crypto3::accumulators::detail::sparse_impl< T >::result_type

◆ value_type

template<typename T >
typedef T::value_type nil::crypto3::accumulators::detail::sparse_impl< T >::value_type

Constructor & Destructor Documentation

◆ sparse_impl()

template<typename T >
template<typename Args >
nil::crypto3::accumulators::detail::sparse_impl< T >::sparse_impl ( const Args &  args)
inline

Member Function Documentation

◆ operator()()

template<typename T >
template<typename ArgumentPack >
void nil::crypto3::accumulators::detail::sparse_impl< T >::operator() ( const ArgumentPack &  args)
inline

◆ resolve_type()

template<typename T >
template<typename SinglePassRange >
result_type nil::crypto3::accumulators::detail::sparse_impl< T >::resolve_type ( const SinglePassRange  r,
std::size_t  offset 
)
inlineprotected

◆ result()

template<typename T >
result_type nil::crypto3::accumulators::detail::sparse_impl< T >::result ( boost::accumulators::dont_care  ) const
inline

Member Data Documentation

◆ accumulated_value

template<typename T >
value_type nil::crypto3::accumulators::detail::sparse_impl< T >::accumulated_value
protected

◆ domain_size_

template<typename T >
std::size_t nil::crypto3::accumulators::detail::sparse_impl< T >::domain_size_
protected

◆ in_block

template<typename T >
bool nil::crypto3::accumulators::detail::sparse_impl< T >::in_block
protected

◆ indices

template<typename T >
indicies_type nil::crypto3::accumulators::detail::sparse_impl< T >::indices
protected

◆ values

template<typename T >
std::vector<value_type> nil::crypto3::accumulators::detail::sparse_impl< T >::values
protected

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