Zeth - Zerocash on Ethereum  0.8
Reference implementation of the Zeth protocol by Clearmatics
Public Member Functions | Public Attributes | List of all members
libzeth::merkle_path_selector< FieldT > Class Template Reference

#include <merkle_path_selector.hpp>

Inheritance diagram for libzeth::merkle_path_selector< FieldT >:
Inheritance graph
[legend]
Collaboration diagram for libzeth::merkle_path_selector< FieldT >:
Collaboration graph
[legend]

Public Member Functions

 merkle_path_selector (libsnark::protoboard< FieldT > &pb, const libsnark::pb_variable< FieldT > &input, const libsnark::pb_variable< FieldT > &pathvar, const libsnark::pb_variable< FieldT > &is_right, const std::string &annotation_prefix)
 
void generate_r1cs_constraints ()
 
void generate_r1cs_witness ()
 
const libsnark::pb_variable< FieldT > & get_left ()
 
const libsnark::pb_variable< FieldT > & get_right ()
 

Public Attributes

const libsnark::pb_variable< FieldT > input
 
const libsnark::pb_variable< FieldT > pathvar
 
const libsnark::pb_variable< FieldT > is_right
 
libsnark::pb_variable< FieldT > left
 
libsnark::pb_variable< FieldT > right
 

Detailed Description

template<typename FieldT>
class libzeth::merkle_path_selector< FieldT >

Definition at line 36 of file merkle_path_selector.hpp.

Constructor & Destructor Documentation

◆ merkle_path_selector()

template<typename FieldT >
libzeth::merkle_path_selector< FieldT >::merkle_path_selector ( libsnark::protoboard< FieldT > &  pb,
const libsnark::pb_variable< FieldT > &  input,
const libsnark::pb_variable< FieldT > &  pathvar,
const libsnark::pb_variable< FieldT > &  is_right,
const std::string &  annotation_prefix 
)

Member Function Documentation

◆ generate_r1cs_constraints()

template<typename FieldT >
void libzeth::merkle_path_selector< FieldT >::generate_r1cs_constraints ( )

◆ generate_r1cs_witness()

template<typename FieldT >
void libzeth::merkle_path_selector< FieldT >::generate_r1cs_witness ( )

◆ get_left()

template<typename FieldT >
const libsnark::pb_variable<FieldT>& libzeth::merkle_path_selector< FieldT >::get_left ( )

◆ get_right()

template<typename FieldT >
const libsnark::pb_variable<FieldT>& libzeth::merkle_path_selector< FieldT >::get_right ( )

Member Data Documentation

◆ input

template<typename FieldT >
const libsnark::pb_variable<FieldT> libzeth::merkle_path_selector< FieldT >::input

Definition at line 40 of file merkle_path_selector.hpp.

◆ is_right

template<typename FieldT >
const libsnark::pb_variable<FieldT> libzeth::merkle_path_selector< FieldT >::is_right

Definition at line 44 of file merkle_path_selector.hpp.

◆ left

template<typename FieldT >
libsnark::pb_variable<FieldT> libzeth::merkle_path_selector< FieldT >::left

Definition at line 47 of file merkle_path_selector.hpp.

◆ pathvar

template<typename FieldT >
const libsnark::pb_variable<FieldT> libzeth::merkle_path_selector< FieldT >::pathvar

Definition at line 42 of file merkle_path_selector.hpp.

◆ right

template<typename FieldT >
libsnark::pb_variable<FieldT> libzeth::merkle_path_selector< FieldT >::right

Definition at line 49 of file merkle_path_selector.hpp.


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