Documentation
¶
Overview ¶
Package ecgo wraps the most commonly used compiler APIs and provides an entry point for compilation. This package simplifies the interaction with the compiler by exposing a unified API interface.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DeserializeInputSolver ¶
func DeserializeInputSolver(buf []byte) *irwg.RootCircuit
DeserializeInputSolver takes a byte buffer and returns a pointer to an ir.InputSolver which represents a deserialized input solver.
func DeserializeLayeredCircuit ¶
func DeserializeLayeredCircuit(buf []byte) *layered.RootCircuit
DeserializeLayeredCircuit takes a byte buffer and returns a pointer to a layered.RootCircuit which represents a deserialized layered circuit.
Types ¶
type API ¶
API encapsulates the ecgo's frontend.API along with two new APIs added to facilitate direct invocation of ecgo.API within the codebase.
type CompileResult ¶
type CompileResult struct {
// contains filtered or unexported fields
}
CompileResult represents the result of a compilation process. It contains unexported fields and provides methods to retrieve various components like the intermediate representation (IR) of the circuit, the WitnessGenerator, and the Layered Circuit.
func Compile ¶
func Compile(field *big.Int, circuit frontend.Circuit, opts ...frontend.CompileOption) (*CompileResult, error)
Compile is similar to gnark's frontend.Compile. It compiles the given circuit and returns a pointer to CompileResult along with any error encountered during the compilation process.
func (*CompileResult) GetCircuitIr ¶
func (c *CompileResult) GetCircuitIr() *irsource.RootCircuit
GetCircuitIr returns the intermediate representation (IR) of the compiled circuit as *ir.RootCircuit.
func (*CompileResult) GetInputSolver ¶
func (c *CompileResult) GetInputSolver() *irwg.RootCircuit
GetLayeredCircuit returns the Layered Circuit component of the compilation result as *layered.RootCircuit.
func (*CompileResult) GetLayeredCircuit ¶
func (c *CompileResult) GetLayeredCircuit() *layered.RootCircuit
GetInputSolver returns the InputSolver component of the compilation result as *ir.InputSolver.
Directories
¶
Path | Synopsis |
---|---|
Package builder provides an implementation based on the gnark frontend builder with the following modifications: - LinearExpression has been changed to allow for quadratic terms in the form of Expression.
|
Package builder provides an implementation based on the gnark frontend builder with the following modifications: - LinearExpression has been changed to allow for quadratic terms in the form of Expression. |
Package layered defines the structures and functions necessary for creating and manipulating layered circuits within the ExpanderCompilerCollection compiler.
|
Package layered defines the structures and functions necessary for creating and manipulating layered circuits within the ExpanderCompilerCollection compiler. |