-module(gdo@result). -compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]). -define(FILEPATH, "src/gdo/result.gleam"). -export([execution_result/2, rows_affected/1, last_insert_id/1, query_result/1, empty_query_result/0, rows/1, row_count/1, first/1]). -export_type([execution_result/0, query_result/0]). -type execution_result() :: {execution_result, integer(), gleam@option:option(integer())}. -type query_result() :: {query_result, list(gdo@row:row())}. -file("src/gdo/result.gleam", 13). -spec execution_result(integer(), gleam@option:option(integer())) -> execution_result(). execution_result(Rows_affected, Last_insert_id) -> {execution_result, Rows_affected, Last_insert_id}. -file("src/gdo/result.gleam", 20). -spec rows_affected(execution_result()) -> integer(). rows_affected(Result) -> {execution_result, Rows_affected, _} = Result, Rows_affected. -file("src/gdo/result.gleam", 25). -spec last_insert_id(execution_result()) -> gleam@option:option(integer()). last_insert_id(Result) -> {execution_result, _, Last_insert_id} = Result, Last_insert_id. -file("src/gdo/result.gleam", 30). -spec query_result(list(gdo@row:row())) -> query_result(). query_result(Rows) -> {query_result, Rows}. -file("src/gdo/result.gleam", 34). -spec empty_query_result() -> query_result(). empty_query_result() -> {query_result, []}. -file("src/gdo/result.gleam", 38). -spec rows(query_result()) -> list(gdo@row:row()). rows(Result) -> {query_result, Rows} = Result, Rows. -file("src/gdo/result.gleam", 43). -spec row_count(query_result()) -> integer(). row_count(Result) -> _pipe = Result, _pipe@1 = rows(_pipe), erlang:length(_pipe@1). -file("src/gdo/result.gleam", 47). -spec first(query_result()) -> gleam@option:option(gdo@row:row()). first(Result) -> case rows(Result) of [First | _] -> {some, First}; [] -> none end.