-module(gleamgen@function). -compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch]). -export([new0/2, new1/3, new2/4, new3/5, new4/6, new5/7, new6/8, new7/9, new8/10, new9/11, to_unchecked/1, get_function_name/1]). -export_type([function_/2]). -type function_(JZE, JZF) :: {function, list({binary(), gleamgen@types:generated_type(gleamgen@types:unchecked())}), gleamgen@types:generated_type(JZF), gleamgen@expression:expression(JZF)} | {gleam_phantom, JZE}. -file("/home/weasel/gleam/testing_gleamgen/gleamgen/src/gleamgen/function.gleam", 12). -spec new0( gleamgen@types:generated_type(JZG), fun(() -> gleamgen@expression:expression(JZG)) ) -> function_(fun((any()) -> JZG), JZG). new0(Returns, Handler) -> Body = Handler(), {function, [], Returns, Body}. -file("/home/weasel/gleam/testing_gleamgen/gleamgen/src/gleamgen/function.gleam", 20). -spec new1( {binary(), gleamgen@types:generated_type(JZM)}, gleamgen@types:generated_type(JZO), fun((gleamgen@expression:expression(JZM)) -> gleamgen@expression:expression(JZO)) ) -> function_(fun((JZM) -> JZO), JZO). new1(Arg1, Returns, Handler) -> Body = Handler(gleamgen@expression:unchecked_ident(erlang:element(1, Arg1))), {function, [{erlang:element(1, Arg1), begin _pipe = erlang:element(2, Arg1), gleamgen_ffi:identity(_pipe) end}], Returns, Body}. -file("/home/weasel/gleam/testing_gleamgen/gleamgen/src/gleamgen/function.gleam", 32). -spec new2( {binary(), gleamgen@types:generated_type(JZU)}, {binary(), gleamgen@types:generated_type(JZW)}, gleamgen@types:generated_type(JZY), fun((gleamgen@expression:expression(JZU), gleamgen@expression:expression(JZW)) -> gleamgen@expression:expression(JZY)) ) -> function_(fun((JZU, JZW) -> JZY), JZY). new2(Arg1, Arg2, Returns, Handler) -> Body = Handler( gleamgen@expression:unchecked_ident(erlang:element(1, Arg1)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg2)) ), {function, [{erlang:element(1, Arg1), begin _pipe = erlang:element(2, Arg1), gleamgen_ffi:identity(_pipe) end}, {erlang:element(1, Arg2), begin _pipe@1 = erlang:element(2, Arg2), gleamgen_ffi:identity(_pipe@1) end}], Returns, Body}. -file("/home/weasel/gleam/testing_gleamgen/gleamgen/src/gleamgen/function.gleam", 54). -spec new3( {binary(), gleamgen@types:generated_type(KAF)}, {binary(), gleamgen@types:generated_type(KAH)}, {binary(), gleamgen@types:generated_type(KAJ)}, gleamgen@types:generated_type(KAL), fun((gleamgen@expression:expression(KAF), gleamgen@expression:expression(KAH), gleamgen@expression:expression(KAJ)) -> gleamgen@expression:expression(KAL)) ) -> function_(fun((KAF, KAH, KAJ) -> KAL), KAL). new3(Arg1, Arg2, Arg3, Returns, Handler) -> Body = Handler( gleamgen@expression:unchecked_ident(erlang:element(1, Arg1)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg2)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg3)) ), {function, [{erlang:element(1, Arg1), begin _pipe = erlang:element(2, Arg1), gleamgen_ffi:identity(_pipe) end}, {erlang:element(1, Arg2), begin _pipe@1 = erlang:element(2, Arg2), gleamgen_ffi:identity(_pipe@1) end}, {erlang:element(1, Arg3), begin _pipe@2 = erlang:element(2, Arg3), gleamgen_ffi:identity(_pipe@2) end}], Returns, Body}. -file("/home/weasel/gleam/testing_gleamgen/gleamgen/src/gleamgen/function.gleam", 83). -spec new4( {binary(), gleamgen@types:generated_type(KAT)}, {binary(), gleamgen@types:generated_type(KAV)}, {binary(), gleamgen@types:generated_type(KAX)}, {binary(), gleamgen@types:generated_type(KAZ)}, gleamgen@types:generated_type(KBB), fun((gleamgen@expression:expression(KAT), gleamgen@expression:expression(KAV), gleamgen@expression:expression(KAX), gleamgen@expression:expression(KAZ)) -> gleamgen@expression:expression(KBB)) ) -> function_(fun((KAT, KAV, KAX, KAZ) -> KBB), KBB). new4(Arg1, Arg2, Arg3, Arg4, Returns, Handler) -> Body = Handler( gleamgen@expression:unchecked_ident(erlang:element(1, Arg1)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg2)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg3)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg4)) ), {function, [{erlang:element(1, Arg1), begin _pipe = erlang:element(2, Arg1), gleamgen_ffi:identity(_pipe) end}, {erlang:element(1, Arg2), begin _pipe@1 = erlang:element(2, Arg2), gleamgen_ffi:identity(_pipe@1) end}, {erlang:element(1, Arg3), begin _pipe@2 = erlang:element(2, Arg3), gleamgen_ffi:identity(_pipe@2) end}, {erlang:element(1, Arg4), begin _pipe@3 = erlang:element(2, Arg4), gleamgen_ffi:identity(_pipe@3) end}], Returns, Body}. -file("/home/weasel/gleam/testing_gleamgen/gleamgen/src/gleamgen/function.gleam", 116). -spec new5( {binary(), gleamgen@types:generated_type(KBK)}, {binary(), gleamgen@types:generated_type(KBM)}, {binary(), gleamgen@types:generated_type(KBO)}, {binary(), gleamgen@types:generated_type(KBQ)}, {binary(), gleamgen@types:generated_type(KBS)}, gleamgen@types:generated_type(KBU), fun((gleamgen@expression:expression(KBK), gleamgen@expression:expression(KBM), gleamgen@expression:expression(KBO), gleamgen@expression:expression(KBQ), gleamgen@expression:expression(KBS)) -> gleamgen@expression:expression(KBU)) ) -> function_(fun((KBK, KBM, KBO, KBQ, KBS) -> KBU), KBU). new5(Arg1, Arg2, Arg3, Arg4, Arg5, Returns, Handler) -> Body = Handler( gleamgen@expression:unchecked_ident(erlang:element(1, Arg1)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg2)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg3)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg4)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg5)) ), {function, [{erlang:element(1, Arg1), begin _pipe = erlang:element(2, Arg1), gleamgen_ffi:identity(_pipe) end}, {erlang:element(1, Arg2), begin _pipe@1 = erlang:element(2, Arg2), gleamgen_ffi:identity(_pipe@1) end}, {erlang:element(1, Arg3), begin _pipe@2 = erlang:element(2, Arg3), gleamgen_ffi:identity(_pipe@2) end}, {erlang:element(1, Arg4), begin _pipe@3 = erlang:element(2, Arg4), gleamgen_ffi:identity(_pipe@3) end}, {erlang:element(1, Arg5), begin _pipe@4 = erlang:element(2, Arg5), gleamgen_ffi:identity(_pipe@4) end}], Returns, Body}. -file("/home/weasel/gleam/testing_gleamgen/gleamgen/src/gleamgen/function.gleam", 153). -spec new6( {binary(), gleamgen@types:generated_type(KCE)}, {binary(), gleamgen@types:generated_type(KCG)}, {binary(), gleamgen@types:generated_type(KCI)}, {binary(), gleamgen@types:generated_type(KCK)}, {binary(), gleamgen@types:generated_type(KCM)}, {binary(), gleamgen@types:generated_type(KCO)}, gleamgen@types:generated_type(KCQ), fun((gleamgen@expression:expression(KCE), gleamgen@expression:expression(KCG), gleamgen@expression:expression(KCI), gleamgen@expression:expression(KCK), gleamgen@expression:expression(KCM), gleamgen@expression:expression(KCO)) -> gleamgen@expression:expression(KCQ)) ) -> function_(fun((KCE, KCG, KCI, KCK, KCM, KCO) -> KCQ), KCQ). new6(Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Returns, Handler) -> Body = Handler( gleamgen@expression:unchecked_ident(erlang:element(1, Arg1)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg2)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg3)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg4)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg5)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg6)) ), {function, [{erlang:element(1, Arg1), begin _pipe = erlang:element(2, Arg1), gleamgen_ffi:identity(_pipe) end}, {erlang:element(1, Arg2), begin _pipe@1 = erlang:element(2, Arg2), gleamgen_ffi:identity(_pipe@1) end}, {erlang:element(1, Arg3), begin _pipe@2 = erlang:element(2, Arg3), gleamgen_ffi:identity(_pipe@2) end}, {erlang:element(1, Arg4), begin _pipe@3 = erlang:element(2, Arg4), gleamgen_ffi:identity(_pipe@3) end}, {erlang:element(1, Arg5), begin _pipe@4 = erlang:element(2, Arg5), gleamgen_ffi:identity(_pipe@4) end}, {erlang:element(1, Arg6), begin _pipe@5 = erlang:element(2, Arg6), gleamgen_ffi:identity(_pipe@5) end}], Returns, Body}. -file("/home/weasel/gleam/testing_gleamgen/gleamgen/src/gleamgen/function.gleam", 194). -spec new7( {binary(), gleamgen@types:generated_type(KDB)}, {binary(), gleamgen@types:generated_type(KDD)}, {binary(), gleamgen@types:generated_type(KDF)}, {binary(), gleamgen@types:generated_type(KDH)}, {binary(), gleamgen@types:generated_type(KDJ)}, {binary(), gleamgen@types:generated_type(KDL)}, {binary(), gleamgen@types:generated_type(KDN)}, gleamgen@types:generated_type(KDP), fun((gleamgen@expression:expression(KDB), gleamgen@expression:expression(KDD), gleamgen@expression:expression(KDF), gleamgen@expression:expression(KDH), gleamgen@expression:expression(KDJ), gleamgen@expression:expression(KDL), gleamgen@expression:expression(KDN)) -> gleamgen@expression:expression(KDP)) ) -> function_(fun((KDB, KDD, KDF, KDH, KDJ, KDL, KDN) -> KDP), KDP). new7(Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Returns, Handler) -> Body = Handler( gleamgen@expression:unchecked_ident(erlang:element(1, Arg1)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg2)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg3)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg4)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg5)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg6)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg7)) ), {function, [{erlang:element(1, Arg1), begin _pipe = erlang:element(2, Arg1), gleamgen_ffi:identity(_pipe) end}, {erlang:element(1, Arg2), begin _pipe@1 = erlang:element(2, Arg2), gleamgen_ffi:identity(_pipe@1) end}, {erlang:element(1, Arg3), begin _pipe@2 = erlang:element(2, Arg3), gleamgen_ffi:identity(_pipe@2) end}, {erlang:element(1, Arg4), begin _pipe@3 = erlang:element(2, Arg4), gleamgen_ffi:identity(_pipe@3) end}, {erlang:element(1, Arg5), begin _pipe@4 = erlang:element(2, Arg5), gleamgen_ffi:identity(_pipe@4) end}, {erlang:element(1, Arg6), begin _pipe@5 = erlang:element(2, Arg6), gleamgen_ffi:identity(_pipe@5) end}, {erlang:element(1, Arg7), begin _pipe@6 = erlang:element(2, Arg7), gleamgen_ffi:identity(_pipe@6) end}], Returns, Body}. -file("/home/weasel/gleam/testing_gleamgen/gleamgen/src/gleamgen/function.gleam", 239). -spec new8( {binary(), gleamgen@types:generated_type(KEB)}, {binary(), gleamgen@types:generated_type(KED)}, {binary(), gleamgen@types:generated_type(KEF)}, {binary(), gleamgen@types:generated_type(KEH)}, {binary(), gleamgen@types:generated_type(KEJ)}, {binary(), gleamgen@types:generated_type(KEL)}, {binary(), gleamgen@types:generated_type(KEN)}, {binary(), gleamgen@types:generated_type(KEP)}, gleamgen@types:generated_type(KER), fun((gleamgen@expression:expression(KEB), gleamgen@expression:expression(KED), gleamgen@expression:expression(KEF), gleamgen@expression:expression(KEH), gleamgen@expression:expression(KEJ), gleamgen@expression:expression(KEL), gleamgen@expression:expression(KEN), gleamgen@expression:expression(KEP)) -> gleamgen@expression:expression(KER)) ) -> function_(fun((KEB, KED, KEF, KEH, KEJ, KEL, KEN, KEP) -> KER), KER). new8(Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Returns, Handler) -> Body = Handler( gleamgen@expression:unchecked_ident(erlang:element(1, Arg1)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg2)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg3)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg4)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg5)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg6)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg7)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg8)) ), {function, [{erlang:element(1, Arg1), begin _pipe = erlang:element(2, Arg1), gleamgen_ffi:identity(_pipe) end}, {erlang:element(1, Arg2), begin _pipe@1 = erlang:element(2, Arg2), gleamgen_ffi:identity(_pipe@1) end}, {erlang:element(1, Arg3), begin _pipe@2 = erlang:element(2, Arg3), gleamgen_ffi:identity(_pipe@2) end}, {erlang:element(1, Arg4), begin _pipe@3 = erlang:element(2, Arg4), gleamgen_ffi:identity(_pipe@3) end}, {erlang:element(1, Arg5), begin _pipe@4 = erlang:element(2, Arg5), gleamgen_ffi:identity(_pipe@4) end}, {erlang:element(1, Arg6), begin _pipe@5 = erlang:element(2, Arg6), gleamgen_ffi:identity(_pipe@5) end}, {erlang:element(1, Arg7), begin _pipe@6 = erlang:element(2, Arg7), gleamgen_ffi:identity(_pipe@6) end}, {erlang:element(1, Arg8), begin _pipe@7 = erlang:element(2, Arg8), gleamgen_ffi:identity(_pipe@7) end}], Returns, Body}. -file("/home/weasel/gleam/testing_gleamgen/gleamgen/src/gleamgen/function.gleam", 288). -spec new9( {binary(), gleamgen@types:generated_type(KFE)}, {binary(), gleamgen@types:generated_type(KFG)}, {binary(), gleamgen@types:generated_type(KFI)}, {binary(), gleamgen@types:generated_type(KFK)}, {binary(), gleamgen@types:generated_type(KFM)}, {binary(), gleamgen@types:generated_type(KFO)}, {binary(), gleamgen@types:generated_type(KFQ)}, {binary(), gleamgen@types:generated_type(KFS)}, {binary(), gleamgen@types:generated_type(KFU)}, gleamgen@types:generated_type(KFW), fun((gleamgen@expression:expression(KFE), gleamgen@expression:expression(KFG), gleamgen@expression:expression(KFI), gleamgen@expression:expression(KFK), gleamgen@expression:expression(KFM), gleamgen@expression:expression(KFO), gleamgen@expression:expression(KFQ), gleamgen@expression:expression(KFS), gleamgen@expression:expression(KFU)) -> gleamgen@expression:expression(KFW)) ) -> function_(fun((KFE, KFG, KFI, KFK, KFM, KFO, KFQ, KFS, KFU) -> KFW), KFW). new9(Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Returns, Handler) -> Body = Handler( gleamgen@expression:unchecked_ident(erlang:element(1, Arg1)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg2)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg3)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg4)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg5)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg6)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg7)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg8)), gleamgen@expression:unchecked_ident(erlang:element(1, Arg9)) ), {function, [{erlang:element(1, Arg1), begin _pipe = erlang:element(2, Arg1), gleamgen_ffi:identity(_pipe) end}, {erlang:element(1, Arg2), begin _pipe@1 = erlang:element(2, Arg2), gleamgen_ffi:identity(_pipe@1) end}, {erlang:element(1, Arg3), begin _pipe@2 = erlang:element(2, Arg3), gleamgen_ffi:identity(_pipe@2) end}, {erlang:element(1, Arg4), begin _pipe@3 = erlang:element(2, Arg4), gleamgen_ffi:identity(_pipe@3) end}, {erlang:element(1, Arg5), begin _pipe@4 = erlang:element(2, Arg5), gleamgen_ffi:identity(_pipe@4) end}, {erlang:element(1, Arg6), begin _pipe@5 = erlang:element(2, Arg6), gleamgen_ffi:identity(_pipe@5) end}, {erlang:element(1, Arg7), begin _pipe@6 = erlang:element(2, Arg7), gleamgen_ffi:identity(_pipe@6) end}, {erlang:element(1, Arg8), begin _pipe@7 = erlang:element(2, Arg8), gleamgen_ffi:identity(_pipe@7) end}, {erlang:element(1, Arg9), begin _pipe@8 = erlang:element(2, Arg9), gleamgen_ffi:identity(_pipe@8) end}], Returns, Body}. -file("/home/weasel/gleam/testing_gleamgen/gleamgen/src/gleamgen/function.gleam", 348). -spec to_unchecked(function_(any(), any())) -> function_(gleamgen@types:unchecked(), gleamgen@types:unchecked()). to_unchecked(Type_) -> gleamgen_ffi:identity(Type_). -file("/home/weasel/gleam/testing_gleamgen/gleamgen/src/gleamgen/function.gleam", 355). -spec get_function_name(any()) -> binary(). get_function_name(Type_) -> gleamgen_ffi:get_function_name(Type_).