Packages

SQL query builder core for Gleam

Current section

Files

Jump to
galchemy src galchemy@ast@query.erl
Raw

src/galchemy@ast@query.erl

-module(galchemy@ast@query).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]).
-define(FILEPATH, "src\\galchemy\\ast\\query.gleam").
-export_type(['query'/0, insert_query/0, delete_query/0, update_query/0]).
-type 'query'() :: {select, galchemy@ast@expression:select_query()} |
{insert, insert_query()} |
{update, update_query()} |
{delete, delete_query()}.
-type insert_query() :: {insert_query,
galchemy@ast@schema:table(),
list(list({galchemy@ast@schema:column_meta(),
galchemy@ast@expression:expression()})),
list(galchemy@ast@expression:select_item())}.
-type delete_query() :: {delete_query,
galchemy@ast@schema:table(),
gleam@option:option(galchemy@ast@expression:predicate()),
list(galchemy@ast@expression:select_item())}.
-type update_query() :: {update_query,
galchemy@ast@schema:table(),
list({galchemy@ast@schema:column_meta(),
galchemy@ast@expression:expression()}),
gleam@option:option(galchemy@ast@expression:predicate()),
list(galchemy@ast@expression:select_item())}.