-record(driver_contract, {
connect :: fun((gdo@driver:connection_target()) -> {ok,
gdo@driver:driver_connection_state()} |
{error, gdo@error:error()}),
close :: fun((gdo@driver:driver_connection_state()) -> {ok, nil} |
{error, gdo@error:error()}),
prepare :: fun((gdo@driver:driver_connection_state(), binary()) -> {ok,
gdo@driver:driver_statement_state()} |
{error, gdo@error:error()}),
exec :: fun((gdo@driver:driver_statement_state(), list(gdo@value:param())) -> {ok,
gdo@result:execution_result()} |
{error, gdo@error:error()}),
query_all :: fun((gdo@driver:driver_statement_state(), list(gdo@value:param())) -> {ok,
gdo@result:query_result()} |
{error, gdo@error:error()}),
'begin' :: fun((gdo@driver:driver_connection_state()) -> {ok,
gdo@driver:driver_connection_state()} |
{error, gdo@error:error()}),
commit :: fun((gdo@driver:driver_connection_state()) -> {ok,
gdo@driver:driver_connection_state()} |
{error, gdo@error:error()}),
rollback :: fun((gdo@driver:driver_connection_state()) -> {ok,
gdo@driver:driver_connection_state()} |
{error, gdo@error:error()}),
last_insert_id :: fun((gdo@driver:driver_connection_state()) -> gleam@option:option(integer()))
}).