prover.h
prover_ctx_t* ctx = c4_prover_create("eth_getBlockByNumber", "[\"latest\", false]", chain_id, C4_PROVER_FLAG_INCLUDE_CODE);
// Execute prover in a loop:
data_request_t* data_request = NULL;
bytes_t proof = {0};
while (true) {
switch (c4_prover_execute(ctx)) {
case C4_SUCCESS:
proof = bytes_dup(ctx->proof);
break;
case C4_PENDING:
while ((data_request = c4_state_get_pending_request(&ctx->state)))
fetch_data(data_request);
break;
case C4_ERROR:
printf("Error: %s\n", ctx->state.error);
break;
}
}
c4_prover_free(ctx);prover_flag_types_t
prover_flags_t
prover_trace_span_t
c4_prover_create
c4_prover_free
c4_prover_execute
c4_prover_status
c4_prover_cache_get
c4_prover_cache_get_local
c4_prover_cache_set
c4_prover_cache_cleanup
c4_prover_cache_invalidate
c4_prover_cache_stats
REQUEST_WORKER_THREAD
Last updated