nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true > Struct Template Reference

This real_packer deals with case InputValueBits > OutputValueBits and invokes explode function, which, in its turn, packs input elements with InputValueBits size represented in InputEndianness endianness into output elements with OutputValueBits size represented in OutputEndianness endianness. More...

#include <pack.hpp>

+ Collaboration diagram for nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >:

Public Types

typedef nil::crypto3::detail::exploder< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits > exploder
 
typedef nil::crypto3::detail::exploder< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits > exploder
 
typedef nil::crypto3::detail::exploder< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits > exploder
 
typedef nil::crypto3::detail::exploder< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits > exploder
 
typedef nil::crypto3::detail::exploder< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits > exploder
 
typedef nil::crypto3::detail::exploder< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits > exploder
 
typedef nil::crypto3::detail::exploder< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits > exploder
 
typedef nil::crypto3::detail::exploder< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits > exploder
 

Public Member Functions

 BOOST_STATIC_ASSERT (!(InputValueBits % OutputValueBits))
 
 BOOST_STATIC_ASSERT (!(InputValueBits % OutputValueBits))
 
 BOOST_STATIC_ASSERT (!(InputValueBits % OutputValueBits))
 
 BOOST_STATIC_ASSERT (!(InputValueBits % OutputValueBits))
 
 BOOST_STATIC_ASSERT (!(InputValueBits % OutputValueBits))
 
 BOOST_STATIC_ASSERT (!(InputValueBits % OutputValueBits))
 
 BOOST_STATIC_ASSERT (!(InputValueBits % OutputValueBits))
 
 BOOST_STATIC_ASSERT (!(InputValueBits % OutputValueBits))
 

Static Public Member Functions

template<typename InputIterator , typename OutputIterator >
static void pack (InputIterator first, InputIterator last, OutputIterator out)
 
template<typename InputIterator , typename OutputIterator >
static void pack (InputIterator first, InputIterator last, OutputIterator out)
 
template<typename InputIterator , typename OutputIterator >
static void pack (InputIterator first, InputIterator last, OutputIterator out)
 
template<typename InputIterator , typename OutputIterator >
static void pack (InputIterator first, InputIterator last, OutputIterator out)
 
template<typename InputIterator , typename OutputIterator >
static void pack (InputIterator first, InputIterator last, OutputIterator out)
 
template<typename InputIterator , typename OutputIterator >
static void pack (InputIterator first, InputIterator last, OutputIterator out)
 
template<typename InputIterator , typename OutputIterator >
static void pack (InputIterator first, InputIterator last, OutputIterator out)
 
template<typename InputIterator , typename OutputIterator >
static void pack (InputIterator first, InputIterator last, OutputIterator out)
 
template<typename InputIterator , typename OutputIterator >
static void pack_n (InputIterator in, std::size_t in_n, OutputIterator out)
 
template<typename InputIterator , typename OutputIterator >
static void pack_n (InputIterator in, std::size_t in_n, OutputIterator out)
 
template<typename InputIterator , typename OutputIterator >
static void pack_n (InputIterator in, std::size_t in_n, OutputIterator out)
 
template<typename InputIterator , typename OutputIterator >
static void pack_n (InputIterator in, std::size_t in_n, OutputIterator out)
 
template<typename InputIterator , typename OutputIterator >
static void pack_n (InputIterator in, std::size_t in_n, OutputIterator out)
 
template<typename InputIterator , typename OutputIterator >
static void pack_n (InputIterator in, std::size_t in_n, OutputIterator out)
 
template<typename InputIterator , typename OutputIterator >
static void pack_n (InputIterator in, std::size_t in_n, OutputIterator out)
 
template<typename InputIterator , typename OutputIterator >
static void pack_n (InputIterator in, std::size_t in_n, OutputIterator out)
 

Detailed Description

template<typename InputEndianness, typename OutputEndianness, std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType, typename OutputType, bool SameEndianness>
struct nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >

This real_packer deals with case InputValueBits > OutputValueBits and invokes explode function, which, in its turn, packs input elements with InputValueBits size represented in InputEndianness endianness into output elements with OutputValueBits size represented in OutputEndianness endianness.

Template Parameters
InputEndianness
OutputEndianness
InputValueBits
OutputValueBits
InputType
OutputType
SameEndianness

Member Typedef Documentation

◆ exploder [1/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
typedef nil::crypto3::detail::exploder<InputEndianness, OutputEndianness, InputValueBits, OutputValueBits> nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::exploder

◆ exploder [2/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
typedef nil::crypto3::detail::exploder<InputEndianness, OutputEndianness, InputValueBits, OutputValueBits> nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::exploder

◆ exploder [3/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
typedef nil::crypto3::detail::exploder<InputEndianness, OutputEndianness, InputValueBits, OutputValueBits> nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::exploder

◆ exploder [4/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
typedef nil::crypto3::detail::exploder<InputEndianness, OutputEndianness, InputValueBits, OutputValueBits> nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::exploder

◆ exploder [5/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
typedef nil::crypto3::detail::exploder<InputEndianness, OutputEndianness, InputValueBits, OutputValueBits> nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::exploder

◆ exploder [6/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
typedef nil::crypto3::detail::exploder<InputEndianness, OutputEndianness, InputValueBits, OutputValueBits> nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::exploder

◆ exploder [7/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
typedef nil::crypto3::detail::exploder<InputEndianness, OutputEndianness, InputValueBits, OutputValueBits> nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::exploder

◆ exploder [8/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
typedef nil::crypto3::detail::exploder<InputEndianness, OutputEndianness, InputValueBits, OutputValueBits> nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::exploder

Member Function Documentation

◆ BOOST_STATIC_ASSERT() [1/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::BOOST_STATIC_ASSERT ( InputValueBits % OutputValueBits)

◆ BOOST_STATIC_ASSERT() [2/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::BOOST_STATIC_ASSERT ( InputValueBits % OutputValueBits)

◆ BOOST_STATIC_ASSERT() [3/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::BOOST_STATIC_ASSERT ( InputValueBits % OutputValueBits)

◆ BOOST_STATIC_ASSERT() [4/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::BOOST_STATIC_ASSERT ( InputValueBits % OutputValueBits)

◆ BOOST_STATIC_ASSERT() [5/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::BOOST_STATIC_ASSERT ( InputValueBits % OutputValueBits)

◆ BOOST_STATIC_ASSERT() [6/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::BOOST_STATIC_ASSERT ( InputValueBits % OutputValueBits)

◆ BOOST_STATIC_ASSERT() [7/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::BOOST_STATIC_ASSERT ( InputValueBits % OutputValueBits)

◆ BOOST_STATIC_ASSERT() [8/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::BOOST_STATIC_ASSERT ( InputValueBits % OutputValueBits)

◆ pack() [1/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
template<typename InputIterator , typename OutputIterator >
static void nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::pack ( InputIterator  first,
InputIterator  last,
OutputIterator  out 
)
inlinestatic

◆ pack() [2/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
template<typename InputIterator , typename OutputIterator >
static void nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::pack ( InputIterator  first,
InputIterator  last,
OutputIterator  out 
)
inlinestatic

◆ pack() [3/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
template<typename InputIterator , typename OutputIterator >
static void nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::pack ( InputIterator  first,
InputIterator  last,
OutputIterator  out 
)
inlinestatic

◆ pack() [4/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
template<typename InputIterator , typename OutputIterator >
static void nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::pack ( InputIterator  first,
InputIterator  last,
OutputIterator  out 
)
inlinestatic

◆ pack() [5/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
template<typename InputIterator , typename OutputIterator >
static void nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::pack ( InputIterator  first,
InputIterator  last,
OutputIterator  out 
)
inlinestatic

◆ pack() [6/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
template<typename InputIterator , typename OutputIterator >
static void nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::pack ( InputIterator  first,
InputIterator  last,
OutputIterator  out 
)
inlinestatic

◆ pack() [7/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
template<typename InputIterator , typename OutputIterator >
static void nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::pack ( InputIterator  first,
InputIterator  last,
OutputIterator  out 
)
inlinestatic

◆ pack() [8/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
template<typename InputIterator , typename OutputIterator >
static void nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::pack ( InputIterator  first,
InputIterator  last,
OutputIterator  out 
)
inlinestatic

◆ pack_n() [1/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
template<typename InputIterator , typename OutputIterator >
static void nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::pack_n ( InputIterator  in,
std::size_t  in_n,
OutputIterator  out 
)
inlinestatic

◆ pack_n() [2/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
template<typename InputIterator , typename OutputIterator >
static void nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::pack_n ( InputIterator  in,
std::size_t  in_n,
OutputIterator  out 
)
inlinestatic

◆ pack_n() [3/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
template<typename InputIterator , typename OutputIterator >
static void nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::pack_n ( InputIterator  in,
std::size_t  in_n,
OutputIterator  out 
)
inlinestatic

◆ pack_n() [4/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
template<typename InputIterator , typename OutputIterator >
static void nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::pack_n ( InputIterator  in,
std::size_t  in_n,
OutputIterator  out 
)
inlinestatic

◆ pack_n() [5/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
template<typename InputIterator , typename OutputIterator >
static void nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::pack_n ( InputIterator  in,
std::size_t  in_n,
OutputIterator  out 
)
inlinestatic

◆ pack_n() [6/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
template<typename InputIterator , typename OutputIterator >
static void nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::pack_n ( InputIterator  in,
std::size_t  in_n,
OutputIterator  out 
)
inlinestatic

◆ pack_n() [7/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
template<typename InputIterator , typename OutputIterator >
static void nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::pack_n ( InputIterator  in,
std::size_t  in_n,
OutputIterator  out 
)
inlinestatic

◆ pack_n() [8/8]

template<typename InputEndianness , typename OutputEndianness , std::size_t InputValueBits, std::size_t OutputValueBits, typename InputType , typename OutputType , bool SameEndianness>
template<typename InputIterator , typename OutputIterator >
static void nil::crypto3::detail::real_packer< InputEndianness, OutputEndianness, InputValueBits, OutputValueBits, InputType, OutputType, SameEndianness, false, true >::pack_n ( InputIterator  in,
std::size_t  in_n,
OutputIterator  out 
)
inlinestatic

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