algebramix_doc 0.3
modulus_multiplier_int_preinverse_helper< size > Struct Template Reference

#include <multiplier.hpp>

List of all members.

Classes

Public Types

Static Public Member Functions


Detailed Description

template<nat size>
struct mmx::modulus_multiplier_int_preinverse_helper< size >

Definition at line 80 of file multiplier.hpp.


Member Typedef Documentation

typedef modulus_maximum_size_int<size> size_helper

Definition at line 81 of file multiplier.hpp.


Member Function Documentation

static void mul ( C dest,
const C src,
const M &  x,
const C presrc 
) [inline, static]

Definition at line 194 of file multiplier.hpp.

References modulus_multiplier_int_preinverse_helper< size >::multiplier_helper< C, D, m >::mul(), and mmx::value().

                                                           {
    static const nat m = size_helper::template maximum_size_helper<C>::value;
    typedef typename unsigned_of_helper<C>::type uC;
    typedef typename unsigned_int_with_double_size_helper<uC>::type uD;
    uC tmp = dest;
    multiplier_helper<uC,uD,m>::mul (tmp, (uC) src,
                                     (uC) x.p, x.r, (uC) presrc);
    dest = tmp; }
static void set ( C dest,
const C src,
const M &  x 
) [inline, static]

Definition at line 183 of file multiplier.hpp.

References modulus_multiplier_int_preinverse_helper< size >::multiplier_helper< C, D, m >::set(), and mmx::value().

                                          {
    static const nat m = size_helper::template maximum_size_helper<C>::value;
    typedef typename unsigned_of_helper<C>::type uC;
    typedef typename unsigned_int_with_double_size_helper<uC>::type uD;
    uC tmp = dest;
    multiplier_helper<uC,uD,m>::set (tmp, (uC) src,
                                     (uC) x.p, (uC) x.q, 
                                     x.r, x.s, x.t);
    dest = tmp; }

The documentation for this struct was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Friends Defines