Clearmatics Libsnark  0.1
C++ library for zkSNARK proofs
Public Member Functions | Static Public Member Functions | List of all members
gadgetlib2::DualWord_Gadget Class Reference

#include <gadget.hpp>

Inheritance diagram for gadgetlib2::DualWord_Gadget:
Inheritance graph
[legend]
Collaboration diagram for gadgetlib2::DualWord_Gadget:
Collaboration graph
[legend]

Public Member Functions

void generateConstraints ()
 
void generateWitness ()
 
- Public Member Functions inherited from gadgetlib2::Gadget
 Gadget (ProtoboardPtr pb)
 
void addUnaryConstraint (const LinearCombination &a, const ::std::string &name)
 
void addRank1Constraint (const LinearCombination &a, const LinearCombination &b, const LinearCombination &c, const ::std::string &name)
 
void enforceBooleanity (const Variable &var)
 
FElemval (const Variable &var)
 
FElem val (const LinearCombination &lc)
 
FieldType fieldType () const
 
bool flagIsSet (const FlagVariable &flag) const
 

Static Public Member Functions

static GadgetPtr create (ProtoboardPtr pb, const DualWord &var, PackingMode packingMode)
 

Additional Inherited Members

- Protected Attributes inherited from gadgetlib2::Gadget
ProtoboardPtr pb_
 

Detailed Description

Definition at line 608 of file gadget.hpp.

Member Function Documentation

◆ create()

GadgetPtr gadgetlib2::DualWord_Gadget::create ( ProtoboardPtr  pb,
const DualWord var,
PackingMode  packingMode 
)
static

Definition at line 842 of file gadget.cpp.

844 {
845  GadgetPtr pGadget(new DualWord_Gadget(pb, var, packingMode));
846  pGadget->init();
847  return pGadget;
848 }

◆ generateConstraints()

void gadgetlib2::DualWord_Gadget::generateConstraints ( )
virtual

Implements gadgetlib2::Gadget.

Definition at line 850 of file gadget.cpp.

851 {
852  packingGadget_->generateConstraints();
853 }

◆ generateWitness()

void gadgetlib2::DualWord_Gadget::generateWitness ( )
virtual

Reimplemented from gadgetlib2::Gadget.

Definition at line 855 of file gadget.cpp.

855 { packingGadget_->generateWitness(); }

The documentation for this class was generated from the following files:
gadgetlib2::GadgetPtr
::std::shared_ptr< Gadget > GadgetPtr
Definition: gadget.hpp:119