Current section

Files

Jump to
ducky src ducky@internal@ffi.erl
Raw

src/ducky@internal@ffi.erl

-module(ducky@internal@ffi).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]).
-define(FILEPATH, "src/ducky/internal/ffi.gleam").
-export([connect/1, close/1, execute_query/3, execute_query_columns/3, prepare/2, execute_prepared/2, finalize/1, append_rows/3, health_check/0, atom_to_string/1, binary_to_atom/1, list_to_tuple/1]).
-export_type([native_connection/0, native_statement/0]).
-if(?OTP_RELEASE >= 27).
-define(MODULEDOC(Str), -moduledoc(Str)).
-define(DOC(Str), -doc(Str)).
-else.
-define(MODULEDOC(Str), -compile([])).
-define(DOC(Str), -compile([])).
-endif.
?MODULEDOC(false).
-type native_connection() :: any().
-type native_statement() :: any().
-file("src/ducky/internal/ffi.gleam", 16).
?DOC(false).
-spec connect(binary()) -> {ok, native_connection()} |
{error, gleam@dynamic:dynamic_()}.
connect(Path) ->
ducky_nif:connect(Path).
-file("src/ducky/internal/ffi.gleam", 20).
?DOC(false).
-spec close(native_connection()) -> {ok, gleam@dynamic:dynamic_()} |
{error, gleam@dynamic:dynamic_()}.
close(Conn) ->
ducky_nif:close(Conn).
-file("src/ducky/internal/ffi.gleam", 31).
?DOC(false).
-spec execute_query(
native_connection(),
binary(),
list(gleam@dynamic:dynamic_())
) -> {ok, {list(binary()), list(list(gleam@dynamic:dynamic_()))}} |
{error, gleam@dynamic:dynamic_()}.
execute_query(Conn, Sql, Params) ->
ducky_nif:execute_query(Conn, Sql, Params).
-file("src/ducky/internal/ffi.gleam", 41).
?DOC(false).
-spec execute_query_columns(
native_connection(),
binary(),
list(gleam@dynamic:dynamic_())
) -> {ok, list({binary(), list(gleam@dynamic:dynamic_())})} |
{error, gleam@dynamic:dynamic_()}.
execute_query_columns(Conn, Sql, Params) ->
ducky_nif:execute_query_columns(Conn, Sql, Params).
-file("src/ducky/internal/ffi.gleam", 52).
?DOC(false).
-spec prepare(native_connection(), binary()) -> {ok, native_statement()} |
{error, gleam@dynamic:dynamic_()}.
prepare(Conn, Sql) ->
ducky_nif:prepare(Conn, Sql).
-file("src/ducky/internal/ffi.gleam", 61).
?DOC(false).
-spec execute_prepared(native_statement(), list(gleam@dynamic:dynamic_())) -> {ok,
{list(binary()), list(list(gleam@dynamic:dynamic_()))}} |
{error, gleam@dynamic:dynamic_()}.
execute_prepared(Stmt, Params) ->
ducky_nif:execute_prepared(Stmt, Params).
-file("src/ducky/internal/ffi.gleam", 68).
?DOC(false).
-spec finalize(native_statement()) -> {ok, gleam@dynamic:dynamic_()} |
{error, gleam@dynamic:dynamic_()}.
finalize(Stmt) ->
ducky_nif:finalize(Stmt).
-file("src/ducky/internal/ffi.gleam", 72).
?DOC(false).
-spec append_rows(
native_connection(),
binary(),
list(list(gleam@dynamic:dynamic_()))
) -> {ok, integer()} | {error, gleam@dynamic:dynamic_()}.
append_rows(Conn, Table, Rows) ->
ducky_nif:append_rows(Conn, Table, Rows).
-file("src/ducky/internal/ffi.gleam", 80).
?DOC(false).
-spec health_check() -> binary().
health_check() ->
ducky_nif:health_check().
-file("src/ducky/internal/ffi.gleam", 84).
?DOC(false).
-spec atom_to_string(gleam@dynamic:dynamic_()) -> binary().
atom_to_string(Atom) ->
erlang:atom_to_binary(Atom).
-file("src/ducky/internal/ffi.gleam", 88).
?DOC(false).
-spec binary_to_atom(binary()) -> gleam@dynamic:dynamic_().
binary_to_atom(S) ->
erlang:binary_to_atom(S).
-file("src/ducky/internal/ffi.gleam", 92).
?DOC(false).
-spec list_to_tuple(list(gleam@dynamic:dynamic_())) -> gleam@dynamic:dynamic_().
list_to_tuple(Items) ->
erlang:list_to_tuple(Items).