-module(gdo). -compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]). -define(FILEPATH, "src/gdo.gleam"). -export([sqlite/1, sqlite_config/1, open_sqlite/1, prepare/1, exec_sqlite/3, query_one_sqlite/3, query_all_sqlite/3, query_one_sqlite_as/4, query_all_sqlite_as/4]). -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(" Public entrypoint for the `gdo` package.\n"). -file("src/gdo.gleam", 16). -spec sqlite(binary()) -> gdo@connection:connection_config(). sqlite(Database) -> gdo@connection:sqlite(Database). -file("src/gdo.gleam", 20). -spec sqlite_config(binary()) -> gdo@connection:connection_config(). sqlite_config(Database) -> gdo@connection:sqlite_config(Database). -file("src/gdo.gleam", 24). -spec open_sqlite(binary()) -> {ok, gdo@connection:connection()} | {error, gdo@error:error()}. open_sqlite(Database) -> _pipe = Database, _pipe@1 = gdo@connection:sqlite(_pipe), gdo@connection:open(_pipe@1). -file("src/gdo.gleam", 30). -spec prepare(binary()) -> {ok, gdo@statement:statement()} | {error, gdo@error:error()}. prepare(Sql) -> gdo@statement:prepare(Sql). -file("src/gdo.gleam", 34). -spec exec_sqlite(binary(), binary(), list(gdo@value:param())) -> {ok, gdo@result:execution_result()} | {error, gdo@error:error()}. exec_sqlite(Database, Sql, Params) -> case open_sqlite(Database) of {ok, Connection} -> gdo@connection:exec(Connection, Sql, Params); {error, Error} -> {error, Error} end. -file("src/gdo.gleam", 45). -spec query_one_sqlite(binary(), binary(), list(gdo@value:param())) -> {ok, gleam@option:option(gdo@row:row())} | {error, gdo@error:error()}. query_one_sqlite(Database, Sql, Params) -> case open_sqlite(Database) of {ok, Connection} -> gdo@connection:query_one(Connection, Sql, Params); {error, Error} -> {error, Error} end. -file("src/gdo.gleam", 56). -spec query_all_sqlite(binary(), binary(), list(gdo@value:param())) -> {ok, gdo@result:query_result()} | {error, gdo@error:error()}. query_all_sqlite(Database, Sql, Params) -> case open_sqlite(Database) of {ok, Connection} -> gdo@connection:query_all(Connection, Sql, Params); {error, Error} -> {error, Error} end. -file("src/gdo.gleam", 67). -spec query_one_sqlite_as( binary(), binary(), list(gdo@value:param()), fun((gdo@row:row()) -> {ok, MCA} | {error, gdo@error:error()}) ) -> {ok, gleam@option:option(MCA)} | {error, gdo@error:error()}. query_one_sqlite_as(Database, Sql, Params, Decoder) -> case open_sqlite(Database) of {ok, Connection} -> gdo@connection:query_one_as(Connection, Sql, Params, Decoder); {error, Error} -> {error, Error} end. -file("src/gdo.gleam", 80). -spec query_all_sqlite_as( binary(), binary(), list(gdo@value:param()), fun((gdo@row:row()) -> {ok, MCG} | {error, gdo@error:error()}) ) -> {ok, list(MCG)} | {error, gdo@error:error()}. query_all_sqlite_as(Database, Sql, Params, Decoder) -> case open_sqlite(Database) of {ok, Connection} -> gdo@connection:query_all_as(Connection, Sql, Params, Decoder); {error, Error} -> {error, Error} end.