Documentation ¶
Index ¶
- func ArrayInit(f schema.Field, v reflect.Value, op Operand) error
- func ArrayToSlice(v reflect.Value) []frontend.Variable
- func CircuitInit(class any, schema *schema.Schema) error
- func CircuitToLean(circuit abstractor.Circuit, field ecc.ID) (string, error)
- func ExportCircuit(circuit ExCircuit) string
- func ExportFooter(name string) string
- func ExportGadget(gadget ExGadget) string
- func ExportGadgets(exGadgets []ExGadget) string
- func ExportPrelude(name string, order *big.Int) string
- func GadgetToLean(circuit abstractor.GadgetDefinition, field ecc.ID) (string, error)
- func GetSchema(circuit any) (*schema.Schema, error)
- func KindOfField(a any, s string) reflect.Kind
- type App
- type Code
- type CodeExtractor
- func (ce *CodeExtractor) Add(i1, i2 frontend.Variable, in ...frontend.Variable) frontend.Variable
- func (ce *CodeExtractor) AddApp(op Op, args ...frontend.Variable) Operand
- func (ce *CodeExtractor) And(a, b frontend.Variable) frontend.Variable
- func (ce *CodeExtractor) AssertIsBoolean(i1 frontend.Variable)
- func (ce *CodeExtractor) AssertIsDifferent(i1, i2 frontend.Variable)
- func (ce *CodeExtractor) AssertIsEqual(i1, i2 frontend.Variable)
- func (ce *CodeExtractor) AssertIsLessOrEqual(v frontend.Variable, bound frontend.Variable)
- func (ce *CodeExtractor) Call(gadget abstractor.GadgetDefinition) []frontend.Variable
- func (ce *CodeExtractor) Cmp(i1, i2 frontend.Variable) frontend.Variable
- func (ce *CodeExtractor) Compiler() frontend.Compiler
- func (ce *CodeExtractor) ConstantValue(v frontend.Variable) (*big.Int, bool)
- func (ce *CodeExtractor) DefineGadget(gadget abstractor.GadgetDefinition) abstractor.Gadget
- func (ce *CodeExtractor) Div(i1, i2 frontend.Variable) frontend.Variable
- func (ce *CodeExtractor) DivUnchecked(i1, i2 frontend.Variable) frontend.Variable
- func (ce *CodeExtractor) FromBinary(b ...frontend.Variable) frontend.Variable
- func (ce *CodeExtractor) Inverse(i1 frontend.Variable) frontend.Variable
- func (ce *CodeExtractor) IsZero(i1 frontend.Variable) frontend.Variable
- func (ce *CodeExtractor) Lookup2(b0, b1 frontend.Variable, i0, i1, i2, i3 frontend.Variable) frontend.Variable
- func (ce *CodeExtractor) Mul(i1, i2 frontend.Variable, in ...frontend.Variable) frontend.Variable
- func (ce *CodeExtractor) MulAcc(a, b, c frontend.Variable) frontend.Variable
- func (ce *CodeExtractor) Neg(i1 frontend.Variable) frontend.Variable
- func (ce *CodeExtractor) NewHint(f hint.Function, nbOutputs int, inputs ...frontend.Variable) ([]frontend.Variable, error)
- func (ce *CodeExtractor) Or(a, b frontend.Variable) frontend.Variable
- func (ce *CodeExtractor) Println(a ...frontend.Variable)
- func (ce *CodeExtractor) Select(b frontend.Variable, i1, i2 frontend.Variable) frontend.Variable
- func (ce *CodeExtractor) Sub(i1, i2 frontend.Variable, in ...frontend.Variable) frontend.Variable
- func (ce *CodeExtractor) ToBinary(i1 frontend.Variable, n ...int) []frontend.Variable
- func (ce *CodeExtractor) Xor(a, b frontend.Variable) frontend.Variable
- type Const
- type ExArg
- type ExArgType
- type ExCircuit
- type ExGadget
- type Gate
- type Input
- type Op
- type OpKind
- type Operand
- type Proj
- type ProjArray
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CircuitToLean ¶
func ExportCircuit ¶
func ExportFooter ¶
func ExportGadget ¶
func ExportGadgets ¶ added in v1.1.0
func GadgetToLean ¶ added in v1.1.0
func GadgetToLean(circuit abstractor.GadgetDefinition, field ecc.ID) (string, error)
Types ¶
type CodeExtractor ¶
func (*CodeExtractor) AddApp ¶
func (ce *CodeExtractor) AddApp(op Op, args ...frontend.Variable) Operand
func (*CodeExtractor) AssertIsBoolean ¶
func (ce *CodeExtractor) AssertIsBoolean(i1 frontend.Variable)
func (*CodeExtractor) AssertIsDifferent ¶
func (ce *CodeExtractor) AssertIsDifferent(i1, i2 frontend.Variable)
func (*CodeExtractor) AssertIsEqual ¶
func (ce *CodeExtractor) AssertIsEqual(i1, i2 frontend.Variable)
func (*CodeExtractor) AssertIsLessOrEqual ¶
func (ce *CodeExtractor) AssertIsLessOrEqual(v frontend.Variable, bound frontend.Variable)
func (*CodeExtractor) Call ¶
func (ce *CodeExtractor) Call(gadget abstractor.GadgetDefinition) []frontend.Variable
func (*CodeExtractor) Cmp ¶
func (ce *CodeExtractor) Cmp(i1, i2 frontend.Variable) frontend.Variable
func (*CodeExtractor) Compiler ¶
func (ce *CodeExtractor) Compiler() frontend.Compiler
func (*CodeExtractor) ConstantValue ¶
func (*CodeExtractor) DefineGadget ¶
func (ce *CodeExtractor) DefineGadget(gadget abstractor.GadgetDefinition) abstractor.Gadget
func (*CodeExtractor) Div ¶
func (ce *CodeExtractor) Div(i1, i2 frontend.Variable) frontend.Variable
func (*CodeExtractor) DivUnchecked ¶
func (ce *CodeExtractor) DivUnchecked(i1, i2 frontend.Variable) frontend.Variable
func (*CodeExtractor) FromBinary ¶
func (ce *CodeExtractor) FromBinary(b ...frontend.Variable) frontend.Variable
func (*CodeExtractor) Inverse ¶
func (ce *CodeExtractor) Inverse(i1 frontend.Variable) frontend.Variable
func (*CodeExtractor) IsZero ¶
func (ce *CodeExtractor) IsZero(i1 frontend.Variable) frontend.Variable
func (*CodeExtractor) MulAcc ¶
func (ce *CodeExtractor) MulAcc(a, b, c frontend.Variable) frontend.Variable
func (*CodeExtractor) Println ¶
func (ce *CodeExtractor) Println(a ...frontend.Variable)
type ExArgType ¶
func CircuitArgs ¶
type ExGadget ¶
type ExGadget struct { Name string Arity int Code []App Outputs []Operand Extractor *CodeExtractor Fields []schema.Field Args []ExArg }
func (*ExGadget) Call ¶
func (g *ExGadget) Call(gadget abstractor.GadgetDefinition) []frontend.Variable
type Input ¶
type Input struct {
Index int
}
Input is used to save the position of the argument in the list of arguments of the circuit function.
Click to show internal directories.
Click to hide internal directories.