# Functions

GetFuncName returns the name of the function using reflection.
IdentityHint sets output[0] to input[0] and is used to implement ToFirstLayer.
Memorized0DFunc memorizes a function that returns a single frontend.Variable.
Memorized1DFunc memorizes a function that returns a one-dimensional slice of frontend.Variables.
Memorized2DFunc memorizes a function that returns a two-dimensional slice of frontend.Variables.
Memorized3DFunc memorizes a function that returns a three-dimensional slice of frontend.Variables.
MemorizedSimpleFunc memorizes a simple subcircuit function.
MemorizedVoidFunc memorizes a function that has no return value.
NewRoot returns a new Root instance.

# Structs

Root is a builder for the root circuit.
SubCircuit represents a subcircuit with its own builder and additional information.
SubCircuitRegistry manages the subcircuit context of each possible subcircuit the uint64 id of a subcircuit function call includes 1.

# Interfaces

API defines a set of methods for interacting with the circuit builder.
SubCircuitAPI defines methods for working with subcircuits.
SubCircuitFunc is an interface that supports any function as a subcircuit.

# Type aliases

SubCircuitSimpleFunc is the most general form of a subcircuit function.