Packages
cake
0.2.0
4.1.0
4.0.0
3.0.0
2.2.2
2.2.1
2.2.0
2.1.3
2.1.2
2.1.1
2.1.0
2.0.2
2.0.1
2.0.0
1.1.2
1.1.1
1.1.0
1.0.1
1.0.0
1.0.0-rc.0
retired
0.15.0
retired
0.14.0
retired
0.13.0
retired
0.12.0
retired
0.11.0
retired
0.10.1
retired
0.10.0
retired
0.9.2
retired
0.9.1
retired
0.9.0
retired
0.8.0
retired
0.7.0
retired
0.6.0
retired
0.5.0
retired
0.4.0
retired
0.3.0
retired
0.2.0
retired
0.1.0
retired
0.0.1
retired
🎂 An SQL query builder for Gleam for SQL dialects 🐘PostgreSQL, 🪶SQLite, 🦭MariaDB, and 🐬MySQL
Retired package: Deprecated - a stable release is available, please use >= 1.0.0
Current section
Files
Jump to
Current section
Files
src/cake@internal@example@cake_write_queries.erl
-module(cake@internal@example@cake_write_queries).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch]).
-export([new/0, to_insert_query/1]).
-export_type([wibble/0]).
-type wibble() :: {wibble, binary(), integer(), boolean()}.
-spec new() -> wibble().
new() ->
{wibble, <<"Wibble"/utf8>>, 42, true}.
-spec caster(wibble()) -> cake@internal@write_query:insert_row().
caster(Wibble) ->
{wibble, Name, Age, Is_wild} = Wibble,
{insert_row,
[{insert_param,
<<"name"/utf8>>,
begin
_pipe = Name,
cake@param:string(_pipe)
end},
{insert_param,
<<"age"/utf8>>,
begin
_pipe@1 = Age,
cake@param:int(_pipe@1)
end},
{insert_param,
<<"is_wild"/utf8>>,
begin
_pipe@2 = Is_wild,
cake@param:bool(_pipe@2)
end}]}.
-spec to_insert_query(list(wibble())) -> cake@internal@write_query:write_query(wibble()).
to_insert_query(Wibbles) ->
_pipe = {insert,
{insert_into_table, <<"cats"/utf8>>},
{insert_columns, [<<"name"/utf8>>, <<"age"/utf8>>, <<"is_wild"/utf8>>]},
no_insert_modifier,
{insert_source_records, Wibbles, fun caster/1},
insert_conflict_error,
no_returning,
no_comment},
cake@internal@write_query:to_insert_query(_pipe).