Shared type definitions for the Barretenberg RPC API.
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept
std::vector< uint8_t > hash
std::vector< uint8_t > bytes
std::vector< uint256_t > fields
static constexpr const char * MSGPACK_SCHEMA_NAME
bool operator==(const Response &) const =default
MSGPACK_FIELDS(bytes, fields, hash)
Response execute(const BBApiRequest &request={}) &&
ProofSystemSettings settings
static constexpr const char * MSGPACK_SCHEMA_NAME
MSGPACK_FIELDS(circuit, settings)
bool operator==(const CircuitComputeVk &) const =default
Contains proof and public inputs. Both are given as vectors of fields. To be used for verification....
static constexpr const char * MSGPACK_SCHEMA_NAME
CircuitComputeVk::Response vk
std::vector< uint256_t > proof
MSGPACK_FIELDS(public_inputs, proof, vk)
std::vector< uint256_t > public_inputs
bool operator==(const Response &) const =default
Represents a request to generate a proof. Currently, UltraHonk is the only proving system supported b...
std::vector< uint8_t > witness
MSGPACK_FIELDS(circuit, witness, settings)
Response execute(const BBApiRequest &request={}) &&
static constexpr const char * MSGPACK_SCHEMA_NAME
ProofSystemSettings settings
bool operator==(const CircuitProve &) const =default
uint32_t num_gates_dyadic
MSGPACK_FIELDS(num_gates, num_gates_dyadic, num_acir_opcodes, gates_per_opcode)
std::vector< size_t > gates_per_opcode
static constexpr const char * MSGPACK_SCHEMA_NAME
bool operator==(const Response &) const =default
uint32_t num_acir_opcodes
Consolidated command for retrieving circuit information. Combines gate count, circuit size,...
ProofSystemSettings settings
static constexpr const char * MSGPACK_SCHEMA_NAME
Response execute(const BBApiRequest &request={}) &&
MSGPACK_FIELDS(circuit, include_gates_per_opcode, settings)
bool include_gates_per_opcode
bool operator==(const CircuitStats &) const =default
bool operator==(const Response &) const =default
static constexpr const char * MSGPACK_SCHEMA_NAME
Verify a proof against a verification key and public inputs.
bool operator==(const CircuitVerify &) const =default
std::vector< uint256_t > proof
static constexpr const char * MSGPACK_SCHEMA_NAME
ProofSystemSettings settings
std::vector< uint256_t > public_inputs
MSGPACK_FIELDS(verification_key, public_inputs, proof, settings)
std::vector< uint8_t > verification_key
Response execute(const BBApiRequest &request={}) &&
MSGPACK_FIELDS(solidity_code)
static constexpr const char * MSGPACK_SCHEMA_NAME
std::string solidity_code
bool operator==(const Response &) const =default
Command to generate Solidity verifier contract.
std::vector< uint8_t > verification_key
ProofSystemSettings settings
MSGPACK_FIELDS(verification_key, settings)
bool operator==(const CircuitWriteSolidityVerifier &) const =default
Response execute(const BBApiRequest &request={}) &&
static constexpr const char * MSGPACK_SCHEMA_NAME
static constexpr const char * MSGPACK_SCHEMA_NAME
bool operator==(const Response &) const =default
std::vector< bb::fr > fields
Convert a verification key to field elements representation. WORKTODO(bbapi): this should become most...
bool operator==(const VkAsFields &) const =default
std::vector< uint8_t > verification_key
static constexpr const char * MSGPACK_SCHEMA_NAME
MSGPACK_FIELDS(verification_key)
Response execute(const BBApiRequest &request={}) &&