nil::crypto3::detail::exploder< Endian< UnitBits >, InputBits, OutputBits, k > Struct Template Reference

#include <exploder.hpp>

+ Collaboration diagram for nil::crypto3::detail::exploder< Endian< UnitBits >, InputBits, OutputBits, k >:

Public Types

typedef Endian< UnitBits > Endianness
 
typedef Endian< UnitBits > Endianness
 
typedef Endian< UnitBits > Endianness
 
typedef exploder< Endianness, InputBits, OutputBits, k+OutputBits > next_type
 
typedef exploder< Endianness, InputBits, OutputBits, k+OutputBits > next_type
 
typedef exploder< Endianness, InputBits, OutputBits, k+OutputBits > next_type
 
typedef exploder_step< Endianness, InputBits, OutputBits, k > step_type
 
typedef exploder_step< Endianness, InputBits, OutputBits, k > step_type
 
typedef exploder_step< Endianness, InputBits, OutputBits, k > step_type
 

Public Member Functions

 BOOST_STATIC_ASSERT (!(InputBits % UnitBits &&UnitBits % InputBits))
 
 BOOST_STATIC_ASSERT (!(InputBits % UnitBits &&UnitBits % InputBits))
 
 BOOST_STATIC_ASSERT (!(InputBits % UnitBits &&UnitBits % InputBits))
 
 BOOST_STATIC_ASSERT (!(OutputBits % UnitBits &&UnitBits % OutputBits))
 
 BOOST_STATIC_ASSERT (!(OutputBits % UnitBits &&UnitBits % OutputBits))
 
 BOOST_STATIC_ASSERT (!(OutputBits % UnitBits &&UnitBits % OutputBits))
 

Static Public Member Functions

template<typename InputValue , typename OutIter >
static void explode (InputValue const &x, OutIter &out)
 
template<typename InputValue , typename OutIter >
static void explode (InputValue const &x, OutIter &out)
 
template<typename InputValue , typename OutIter >
static void explode (InputValue const &x, OutIter &out)
 

Member Typedef Documentation

◆ Endianness [1/3]

template<template< int > class Endian, int UnitBits, int InputBits, int OutputBits, int k>
typedef Endian<UnitBits> nil::crypto3::detail::exploder< Endian< UnitBits >, InputBits, OutputBits, k >::Endianness

◆ Endianness [2/3]

template<template< int > class Endian, int UnitBits, int InputBits, int OutputBits, int k>
typedef Endian<UnitBits> nil::crypto3::detail::exploder< Endian< UnitBits >, InputBits, OutputBits, k >::Endianness

◆ Endianness [3/3]

template<template< int > class Endian, int UnitBits, int InputBits, int OutputBits, int k>
typedef Endian<UnitBits> nil::crypto3::detail::exploder< Endian< UnitBits >, InputBits, OutputBits, k >::Endianness

◆ next_type [1/3]

template<template< int > class Endian, int UnitBits, int InputBits, int OutputBits, int k>
typedef exploder<Endianness, InputBits, OutputBits, k + OutputBits> nil::crypto3::detail::exploder< Endian< UnitBits >, InputBits, OutputBits, k >::next_type

◆ next_type [2/3]

template<template< int > class Endian, int UnitBits, int InputBits, int OutputBits, int k>
typedef exploder<Endianness, InputBits, OutputBits, k + OutputBits> nil::crypto3::detail::exploder< Endian< UnitBits >, InputBits, OutputBits, k >::next_type

◆ next_type [3/3]

template<template< int > class Endian, int UnitBits, int InputBits, int OutputBits, int k>
typedef exploder<Endianness, InputBits, OutputBits, k + OutputBits> nil::crypto3::detail::exploder< Endian< UnitBits >, InputBits, OutputBits, k >::next_type

◆ step_type [1/3]

template<template< int > class Endian, int UnitBits, int InputBits, int OutputBits, int k>
typedef exploder_step<Endianness, InputBits, OutputBits, k> nil::crypto3::detail::exploder< Endian< UnitBits >, InputBits, OutputBits, k >::step_type

◆ step_type [2/3]

template<template< int > class Endian, int UnitBits, int InputBits, int OutputBits, int k>
typedef exploder_step<Endianness, InputBits, OutputBits, k> nil::crypto3::detail::exploder< Endian< UnitBits >, InputBits, OutputBits, k >::step_type

◆ step_type [3/3]

template<template< int > class Endian, int UnitBits, int InputBits, int OutputBits, int k>
typedef exploder_step<Endianness, InputBits, OutputBits, k> nil::crypto3::detail::exploder< Endian< UnitBits >, InputBits, OutputBits, k >::step_type

Member Function Documentation

◆ BOOST_STATIC_ASSERT() [1/6]

template<template< int > class Endian, int UnitBits, int InputBits, int OutputBits, int k>
nil::crypto3::detail::exploder< Endian< UnitBits >, InputBits, OutputBits, k >::BOOST_STATIC_ASSERT ( InputBits % UnitBits &&UnitBits % InputBits)

◆ BOOST_STATIC_ASSERT() [2/6]

template<template< int > class Endian, int UnitBits, int InputBits, int OutputBits, int k>
nil::crypto3::detail::exploder< Endian< UnitBits >, InputBits, OutputBits, k >::BOOST_STATIC_ASSERT ( InputBits % UnitBits &&UnitBits % InputBits)

◆ BOOST_STATIC_ASSERT() [3/6]

template<template< int > class Endian, int UnitBits, int InputBits, int OutputBits, int k>
nil::crypto3::detail::exploder< Endian< UnitBits >, InputBits, OutputBits, k >::BOOST_STATIC_ASSERT ( InputBits % UnitBits &&UnitBits % InputBits)

◆ BOOST_STATIC_ASSERT() [4/6]

template<template< int > class Endian, int UnitBits, int InputBits, int OutputBits, int k>
nil::crypto3::detail::exploder< Endian< UnitBits >, InputBits, OutputBits, k >::BOOST_STATIC_ASSERT ( OutputBits % UnitBits &&UnitBits % OutputBits)

◆ BOOST_STATIC_ASSERT() [5/6]

template<template< int > class Endian, int UnitBits, int InputBits, int OutputBits, int k>
nil::crypto3::detail::exploder< Endian< UnitBits >, InputBits, OutputBits, k >::BOOST_STATIC_ASSERT ( OutputBits % UnitBits &&UnitBits % OutputBits)

◆ BOOST_STATIC_ASSERT() [6/6]

template<template< int > class Endian, int UnitBits, int InputBits, int OutputBits, int k>
nil::crypto3::detail::exploder< Endian< UnitBits >, InputBits, OutputBits, k >::BOOST_STATIC_ASSERT ( OutputBits % UnitBits &&UnitBits % OutputBits)

◆ explode() [1/3]

template<template< int > class Endian, int UnitBits, int InputBits, int OutputBits, int k>
template<typename InputValue , typename OutIter >
static void nil::crypto3::detail::exploder< Endian< UnitBits >, InputBits, OutputBits, k >::explode ( InputValue const &  x,
OutIter &  out 
)
inlinestatic

◆ explode() [2/3]

template<template< int > class Endian, int UnitBits, int InputBits, int OutputBits, int k>
template<typename InputValue , typename OutIter >
static void nil::crypto3::detail::exploder< Endian< UnitBits >, InputBits, OutputBits, k >::explode ( InputValue const &  x,
OutIter &  out 
)
inlinestatic

◆ explode() [3/3]

template<template< int > class Endian, int UnitBits, int InputBits, int OutputBits, int k>
template<typename InputValue , typename OutIter >
static void nil::crypto3::detail::exploder< Endian< UnitBits >, InputBits, OutputBits, k >::explode ( InputValue const &  x,
OutIter &  out 
)
inlinestatic

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