nil::crypto3::algebra::curves::detail::mnt6_types< Version > Struct Template Reference

A struct representing details about base and scalar fields. More...

#include <types.hpp>

+ Collaboration diagram for nil::crypto3::algebra::curves::detail::mnt6_types< Version >:

Public Types

using base_field_type = fields::mnt6_base_field< Version >
 
using g1_field_type = base_field_type
 
template<typename Form , typename Coordinates >
using g1_type = mnt6_g1< Version, Form, Coordinates >
 
using g2_field_type = typename fields::fp3< base_field_type >
 
template<typename Form , typename Coordinates >
using g2_type = mnt6_g2< Version, Form, Coordinates >
 
using gt_field_type = typename fields::fp6_2over3< base_field_type >
 
using integral_type = typename base_field_type::integral_type
 
using scalar_field_type = fields::mnt6_scalar_field< Version >
 

Detailed Description

template<std::size_t Version>
struct nil::crypto3::algebra::curves::detail::mnt6_types< Version >

A struct representing details about base and scalar fields.

Template Parameters
Versionversion of the curve

Member Typedef Documentation

◆ base_field_type

template<std::size_t Version>
using nil::crypto3::algebra::curves::detail::mnt6_types< Version >::base_field_type = fields::mnt6_base_field<Version>

◆ g1_field_type

template<std::size_t Version>
using nil::crypto3::algebra::curves::detail::mnt6_types< Version >::g1_field_type = base_field_type

◆ g1_type

template<std::size_t Version>
template<typename Form , typename Coordinates >
using nil::crypto3::algebra::curves::detail::mnt6_types< Version >::g1_type = mnt6_g1<Version, Form, Coordinates>

◆ g2_field_type

template<std::size_t Version>
using nil::crypto3::algebra::curves::detail::mnt6_types< Version >::g2_field_type = typename fields::fp3<base_field_type>

◆ g2_type

template<std::size_t Version>
template<typename Form , typename Coordinates >
using nil::crypto3::algebra::curves::detail::mnt6_types< Version >::g2_type = mnt6_g2<Version, Form, Coordinates>

◆ gt_field_type

template<std::size_t Version>
using nil::crypto3::algebra::curves::detail::mnt6_types< Version >::gt_field_type = typename fields::fp6_2over3<base_field_type>

◆ integral_type

template<std::size_t Version>
using nil::crypto3::algebra::curves::detail::mnt6_types< Version >::integral_type = typename base_field_type::integral_type

◆ scalar_field_type

template<std::size_t Version>
using nil::crypto3::algebra::curves::detail::mnt6_types< Version >::scalar_field_type = fields::mnt6_scalar_field<Version>

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