Current section

Files

Jump to
gleamgen src gleamgen@expression@constructor.erl
Raw

src/gleamgen@expression@constructor.erl

-module(gleamgen@expression@constructor).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch]).
-export([new/1, to_expression0/1, to_expression1/1, to_expression2/1, to_expression3/1, to_expression4/1, to_expression5/1, to_expression6/1, to_expression7/1, to_expression8/1, to_expression9/1, to_expression_unchecked/1, name/1, unsafe_convert/1]).
-export_type([constructor/3]).
-if(?OTP_RELEASE >= 27).
-define(MODULEDOC(Str), -moduledoc(Str)).
-define(DOC(Str), -doc(Str)).
-else.
-define(MODULEDOC(Str), -compile([])).
-define(DOC(Str), -compile([])).
-endif.
-opaque constructor(JLC, JLD, JLE) :: {constructor,
gleamgen@types@variant:variant(gleamgen@types:unchecked())} |
{gleam_phantom, JLC, JLD, JLE}.
-file("src/gleamgen/expression/constructor.gleam", 39).
?DOC(false).
-spec new(gleamgen@types@variant:variant(gleamgen@types:unchecked())) -> constructor(any(), any(), any()).
new(Variant) ->
{constructor, Variant}.
-file("src/gleamgen/expression/constructor.gleam", 45).
-spec to_expression0(constructor(JNF, {}, any())) -> gleamgen@expression:expression(JNF).
to_expression0(Constructor) ->
gleamgen@expression:unchecked_ident(
erlang:element(2, erlang:element(2, Constructor))
).
-file("src/gleamgen/expression/constructor.gleam", 51).
-spec to_expression1(constructor(JNL, {{}, JNM}, JNO)) -> gleamgen@expression:expression(fun((JNM) -> gleamgen@types@custom:custom_type(JNL, JNO))).
to_expression1(Constructor) ->
gleamgen@expression:unchecked_ident(
erlang:element(2, erlang:element(2, Constructor))
).
-file("src/gleamgen/expression/constructor.gleam", 60).
-spec to_expression2(constructor(JNV, {{{}, JNW}, JNX}, JOA)) -> gleamgen@expression:expression(fun((JNW, JNX) -> gleamgen@types@custom:custom_type(JNV, JOA))).
to_expression2(Constructor) ->
gleamgen@expression:unchecked_ident(
erlang:element(2, erlang:element(2, Constructor))
).
-file("src/gleamgen/expression/constructor.gleam", 68).
-spec to_expression3(constructor(JOH, {{{{}, JOI}, JOJ}, JOK}, JOO)) -> gleamgen@expression:expression(fun((JOI, JOJ, JOK) -> gleamgen@types@custom:custom_type(JOH, JOO))).
to_expression3(Constructor) ->
gleamgen@expression:unchecked_ident(
erlang:element(2, erlang:element(2, Constructor))
).
-file("src/gleamgen/expression/constructor.gleam", 76).
-spec to_expression4(constructor(JOV, {{{{{}, JOW}, JOX}, JOY}, JOZ}, any())) -> gleamgen@expression:expression(fun((JOW, JOX, JOY, JOZ) -> JOV)).
to_expression4(Constructor) ->
gleamgen@expression:unchecked_ident(
erlang:element(2, erlang:element(2, Constructor))
).
-file("src/gleamgen/expression/constructor.gleam", 82).
-spec to_expression5(
constructor(JPJ, {{{{{{}, JPK}, JPL}, JPM}, JPN}, JPO}, any())
) -> gleamgen@expression:expression(fun((JPK, JPL, JPM, JPN, JPO) -> JPJ)).
to_expression5(Constructor) ->
gleamgen@expression:unchecked_ident(
erlang:element(2, erlang:element(2, Constructor))
).
-file("src/gleamgen/expression/constructor.gleam", 88).
-spec to_expression6(
constructor(JPZ, {{{{{{{}, JQA}, JQB}, JQC}, JQD}, JQE}, JQF}, any())
) -> gleamgen@expression:expression(fun((JQA, JQB, JQC, JQD, JQE, JQF) -> JPZ)).
to_expression6(Constructor) ->
gleamgen@expression:unchecked_ident(
erlang:element(2, erlang:element(2, Constructor))
).
-file("src/gleamgen/expression/constructor.gleam", 94).
-spec to_expression7(
constructor(JQR, {{{{{{{{}, JQS}, JQT}, JQU}, JQV}, JQW}, JQX}, JQY}, any())
) -> gleamgen@expression:expression(fun((JQS, JQT, JQU, JQV, JQW, JQX, JQY) -> JQR)).
to_expression7(Constructor) ->
gleamgen@expression:unchecked_ident(
erlang:element(2, erlang:element(2, Constructor))
).
-file("src/gleamgen/expression/constructor.gleam", 104).
-spec to_expression8(
constructor(JRL, {{{{{{{{{}, JRM}, JRN}, JRO}, JRP}, JRQ}, JRR}, JRS}, JRT}, any())
) -> gleamgen@expression:expression(fun((JRM, JRN, JRO, JRP, JRQ, JRR, JRS, JRT) -> JRL)).
to_expression8(Constructor) ->
gleamgen@expression:unchecked_ident(
erlang:element(2, erlang:element(2, Constructor))
).
-file("src/gleamgen/expression/constructor.gleam", 114).
-spec to_expression9(
constructor(JSH, {{{{{{{{{{}, JSI}, JSJ}, JSK}, JSL}, JSM}, JSN}, JSO}, JSP},
JSQ}, any())
) -> gleamgen@expression:expression(fun((JSI, JSJ, JSK, JSL, JSM, JSN, JSO, JSP, JSQ) -> JSH)).
to_expression9(Constructor) ->
gleamgen@expression:unchecked_ident(
erlang:element(2, erlang:element(2, Constructor))
).
-file("src/gleamgen/expression/constructor.gleam", 126).
-spec to_expression_unchecked(constructor(any(), any(), any())) -> gleamgen@expression:expression(any()).
to_expression_unchecked(Constructor) ->
gleamgen@expression:unchecked_ident(
erlang:element(2, erlang:element(2, Constructor))
).
-file("src/gleamgen/expression/constructor.gleam", 132).
-spec name(constructor(any(), any(), any())) -> binary().
name(Constructor) ->
erlang:element(2, erlang:element(2, Constructor)).
-file("src/gleamgen/expression/constructor.gleam", 136).
-spec unsafe_convert(constructor(JTT, any(), any())) -> constructor(JTT, any(), any()).
unsafe_convert(Constructor) ->
{constructor, erlang:element(2, Constructor)}.