-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_(JXO, JXP) :: {function, list({binary(), gleamgen@types:generated_type(gleamgen@types:unchecked())}), gleamgen@types:generated_type(JXP), gleamgen@expression:expression(JXP)} | {gleam_phantom, JXO}. -file("/home/weasel/gleam/testing_gleamgen/gleamgen/src/gleamgen/function.gleam", 12). -spec new0( gleamgen@types:generated_type(JXQ), fun(() -> gleamgen@expression:expression(JXQ)) ) -> function_(fun((any()) -> JXQ), JXQ). 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(JXW)}, gleamgen@types:generated_type(JXY), fun((gleamgen@expression:expression(JXW)) -> gleamgen@expression:expression(JXY)) ) -> function_(fun((JXW) -> JXY), JXY). 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(JYE)}, {binary(), gleamgen@types:generated_type(JYG)}, gleamgen@types:generated_type(JYI), fun((gleamgen@expression:expression(JYE), gleamgen@expression:expression(JYG)) -> gleamgen@expression:expression(JYI)) ) -> function_(fun((JYE, JYG) -> JYI), JYI). 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(JYP)}, {binary(), gleamgen@types:generated_type(JYR)}, {binary(), gleamgen@types:generated_type(JYT)}, gleamgen@types:generated_type(JYV), fun((gleamgen@expression:expression(JYP), gleamgen@expression:expression(JYR), gleamgen@expression:expression(JYT)) -> gleamgen@expression:expression(JYV)) ) -> function_(fun((JYP, JYR, JYT) -> JYV), JYV). 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(JZD)}, {binary(), gleamgen@types:generated_type(JZF)}, {binary(), gleamgen@types:generated_type(JZH)}, {binary(), gleamgen@types:generated_type(JZJ)}, gleamgen@types:generated_type(JZL), fun((gleamgen@expression:expression(JZD), gleamgen@expression:expression(JZF), gleamgen@expression:expression(JZH), gleamgen@expression:expression(JZJ)) -> gleamgen@expression:expression(JZL)) ) -> function_(fun((JZD, JZF, JZH, JZJ) -> JZL), JZL). 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(JZU)}, {binary(), gleamgen@types:generated_type(JZW)}, {binary(), gleamgen@types:generated_type(JZY)}, {binary(), gleamgen@types:generated_type(KAA)}, {binary(), gleamgen@types:generated_type(KAC)}, gleamgen@types:generated_type(KAE), fun((gleamgen@expression:expression(JZU), gleamgen@expression:expression(JZW), gleamgen@expression:expression(JZY), gleamgen@expression:expression(KAA), gleamgen@expression:expression(KAC)) -> gleamgen@expression:expression(KAE)) ) -> function_(fun((JZU, JZW, JZY, KAA, KAC) -> KAE), KAE). 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(KAO)}, {binary(), gleamgen@types:generated_type(KAQ)}, {binary(), gleamgen@types:generated_type(KAS)}, {binary(), gleamgen@types:generated_type(KAU)}, {binary(), gleamgen@types:generated_type(KAW)}, {binary(), gleamgen@types:generated_type(KAY)}, gleamgen@types:generated_type(KBA), fun((gleamgen@expression:expression(KAO), gleamgen@expression:expression(KAQ), gleamgen@expression:expression(KAS), gleamgen@expression:expression(KAU), gleamgen@expression:expression(KAW), gleamgen@expression:expression(KAY)) -> gleamgen@expression:expression(KBA)) ) -> function_(fun((KAO, KAQ, KAS, KAU, KAW, KAY) -> KBA), KBA). 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(KBL)}, {binary(), gleamgen@types:generated_type(KBN)}, {binary(), gleamgen@types:generated_type(KBP)}, {binary(), gleamgen@types:generated_type(KBR)}, {binary(), gleamgen@types:generated_type(KBT)}, {binary(), gleamgen@types:generated_type(KBV)}, {binary(), gleamgen@types:generated_type(KBX)}, gleamgen@types:generated_type(KBZ), fun((gleamgen@expression:expression(KBL), gleamgen@expression:expression(KBN), gleamgen@expression:expression(KBP), gleamgen@expression:expression(KBR), gleamgen@expression:expression(KBT), gleamgen@expression:expression(KBV), gleamgen@expression:expression(KBX)) -> gleamgen@expression:expression(KBZ)) ) -> function_(fun((KBL, KBN, KBP, KBR, KBT, KBV, KBX) -> KBZ), KBZ). 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(KCL)}, {binary(), gleamgen@types:generated_type(KCN)}, {binary(), gleamgen@types:generated_type(KCP)}, {binary(), gleamgen@types:generated_type(KCR)}, {binary(), gleamgen@types:generated_type(KCT)}, {binary(), gleamgen@types:generated_type(KCV)}, {binary(), gleamgen@types:generated_type(KCX)}, {binary(), gleamgen@types:generated_type(KCZ)}, gleamgen@types:generated_type(KDB), fun((gleamgen@expression:expression(KCL), gleamgen@expression:expression(KCN), gleamgen@expression:expression(KCP), gleamgen@expression:expression(KCR), gleamgen@expression:expression(KCT), gleamgen@expression:expression(KCV), gleamgen@expression:expression(KCX), gleamgen@expression:expression(KCZ)) -> gleamgen@expression:expression(KDB)) ) -> function_(fun((KCL, KCN, KCP, KCR, KCT, KCV, KCX, KCZ) -> KDB), KDB). 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(KDO)}, {binary(), gleamgen@types:generated_type(KDQ)}, {binary(), gleamgen@types:generated_type(KDS)}, {binary(), gleamgen@types:generated_type(KDU)}, {binary(), gleamgen@types:generated_type(KDW)}, {binary(), gleamgen@types:generated_type(KDY)}, {binary(), gleamgen@types:generated_type(KEA)}, {binary(), gleamgen@types:generated_type(KEC)}, {binary(), gleamgen@types:generated_type(KEE)}, gleamgen@types:generated_type(KEG), fun((gleamgen@expression:expression(KDO), gleamgen@expression:expression(KDQ), gleamgen@expression:expression(KDS), gleamgen@expression:expression(KDU), gleamgen@expression:expression(KDW), gleamgen@expression:expression(KDY), gleamgen@expression:expression(KEA), gleamgen@expression:expression(KEC), gleamgen@expression:expression(KEE)) -> gleamgen@expression:expression(KEG)) ) -> function_(fun((KDO, KDQ, KDS, KDU, KDW, KDY, KEA, KEC, KEE) -> KEG), KEG). 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_).