Bitcoin Core 31.0.0
P2P Digital Currency
Loading...
Searching...
No Matches
LinTrans< I, N > Class Template Reference

A Linear N-bit transformation over the field I. More...

#include <lintrans.h>

Public Member Functions

 LinTrans ()=default
constexpr LinTrans (I a, I b)
constexpr LinTrans (I a, I b, I c)
constexpr LinTrans (I a, I b, I c, I d)
constexpr LinTrans (I a, I b, I c, I d, I e)
constexpr LinTrans (I a, I b, I c, I d, I e, I f)
constexpr LinTrans (I a, I b, I c, I d, I e, I f, I g)
constexpr LinTrans (I a, I b, I c, I d, I e, I f, I g, I h)
constexpr LinTrans (const I *p, Num< 2 >)
constexpr LinTrans (const I *p, Num< 3 >)
constexpr LinTrans (const I *p, Num< 4 >)
constexpr LinTrans (const I *p, Num< 5 >)
constexpr LinTrans (const I *p, Num< 6 >)
constexpr LinTrans (const I *p, Num< 7 >)
constexpr LinTrans (const I *p, Num< 8 >)
template<I(*)(const I &) F>
Build (Num< 1 >, I a)
template<I(*)(const I &) F>
Build (Num< 2 >, I a)
template<I(*)(const I &) F>
Build (Num< 3 >, I a)
template<I(*)(const I &) F>
Build (Num< 4 >, I a)
template<I(*)(const I &) F>
Build (Num< 5 >, I a)
template<I(*)(const I &) F>
Build (Num< 6 >, I a)
template<typename O, int P>
I constexpr Map (I a) const
template<typename O, int P>
I constexpr TopMap (I a) const

Private Attributes

table [1<< N]

Detailed Description

template<typename I, int N>
class LinTrans< I, N >

A Linear N-bit transformation over the field I.

Definition at line 16 of file lintrans.h.

Constructor & Destructor Documentation

◆ LinTrans() [1/15]

template<typename I, int N>
LinTrans< I, N >::LinTrans ( )
default
Here is the caller graph for this function:

◆ LinTrans() [2/15]

template<typename I, int N>
LinTrans< I, N >::LinTrans ( I a,
I b )
inlineconstexpr

Definition at line 23 of file lintrans.h.

◆ LinTrans() [3/15]

template<typename I, int N>
LinTrans< I, N >::LinTrans ( I a,
I b,
I c )
inlineconstexpr

Definition at line 24 of file lintrans.h.

◆ LinTrans() [4/15]

template<typename I, int N>
LinTrans< I, N >::LinTrans ( I a,
I b,
I c,
I d )
inlineconstexpr

Definition at line 25 of file lintrans.h.

◆ LinTrans() [5/15]

template<typename I, int N>
LinTrans< I, N >::LinTrans ( I a,
I b,
I c,
I d,
I e )
inlineconstexpr

Definition at line 26 of file lintrans.h.

◆ LinTrans() [6/15]

template<typename I, int N>
LinTrans< I, N >::LinTrans ( I a,
I b,
I c,
I d,
I e,
I f )
inlineconstexpr

Definition at line 27 of file lintrans.h.

◆ LinTrans() [7/15]

template<typename I, int N>
LinTrans< I, N >::LinTrans ( I a,
I b,
I c,
I d,
I e,
I f,
I g )
inlineconstexpr

Definition at line 28 of file lintrans.h.

◆ LinTrans() [8/15]

template<typename I, int N>
LinTrans< I, N >::LinTrans ( I a,
I b,
I c,
I d,
I e,
I f,
I g,
I h )
inlineconstexpr

Definition at line 29 of file lintrans.h.

◆ LinTrans() [9/15]

template<typename I, int N>
LinTrans< I, N >::LinTrans ( const I * p,
Num< 2 >  )
inlineconstexpr

Definition at line 32 of file lintrans.h.

Here is the call graph for this function:

◆ LinTrans() [10/15]

template<typename I, int N>
LinTrans< I, N >::LinTrans ( const I * p,
Num< 3 >  )
inlineconstexpr

Definition at line 33 of file lintrans.h.

Here is the call graph for this function:

◆ LinTrans() [11/15]

template<typename I, int N>
LinTrans< I, N >::LinTrans ( const I * p,
Num< 4 >  )
inlineconstexpr

Definition at line 34 of file lintrans.h.

Here is the call graph for this function:

◆ LinTrans() [12/15]

template<typename I, int N>
LinTrans< I, N >::LinTrans ( const I * p,
Num< 5 >  )
inlineconstexpr

Definition at line 35 of file lintrans.h.

Here is the call graph for this function:

◆ LinTrans() [13/15]

template<typename I, int N>
LinTrans< I, N >::LinTrans ( const I * p,
Num< 6 >  )
inlineconstexpr

Definition at line 36 of file lintrans.h.

Here is the call graph for this function:

◆ LinTrans() [14/15]

template<typename I, int N>
LinTrans< I, N >::LinTrans ( const I * p,
Num< 7 >  )
inlineconstexpr

Definition at line 37 of file lintrans.h.

Here is the call graph for this function:

◆ LinTrans() [15/15]

template<typename I, int N>
LinTrans< I, N >::LinTrans ( const I * p,
Num< 8 >  )
inlineconstexpr

Definition at line 38 of file lintrans.h.

Here is the call graph for this function:

Member Function Documentation

◆ Build() [1/6]

template<typename I, int N>
template<I(*)(const I &) F>
I LinTrans< I, N >::Build ( Num< 1 > ,
I a )
inline

Definition at line 41 of file lintrans.h.

◆ Build() [2/6]

template<typename I, int N>
template<I(*)(const I &) F>
I LinTrans< I, N >::Build ( Num< 2 > ,
I a )
inline

Definition at line 48 of file lintrans.h.

◆ Build() [3/6]

template<typename I, int N>
template<I(*)(const I &) F>
I LinTrans< I, N >::Build ( Num< 3 > ,
I a )
inline

Definition at line 56 of file lintrans.h.

◆ Build() [4/6]

template<typename I, int N>
template<I(*)(const I &) F>
I LinTrans< I, N >::Build ( Num< 4 > ,
I a )
inline

Definition at line 64 of file lintrans.h.

◆ Build() [5/6]

template<typename I, int N>
template<I(*)(const I &) F>
I LinTrans< I, N >::Build ( Num< 5 > ,
I a )
inline

Definition at line 73 of file lintrans.h.

◆ Build() [6/6]

template<typename I, int N>
template<I(*)(const I &) F>
I LinTrans< I, N >::Build ( Num< 6 > ,
I a )
inline

Definition at line 84 of file lintrans.h.

◆ Map()

template<typename I, int N>
template<typename O, int P>
I constexpr LinTrans< I, N >::Map ( I a) const
inlineconstexpr

Definition at line 99 of file lintrans.h.

◆ TopMap()

template<typename I, int N>
template<typename O, int P>
I constexpr LinTrans< I, N >::TopMap ( I a) const
inlineconstexpr

Definition at line 102 of file lintrans.h.

Member Data Documentation

◆ table

template<typename I, int N>
I LinTrans< I, N >::table[1<< N]
private

Definition at line 18 of file lintrans.h.


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