JamCoreDsl

trait JamCoreDsl extends JamDsl
trait JamDsl
class Object
trait Matchable
class Any

Type members

Inherited classlikes

final class JamConfig(val brewRecRegex: String)
Inherited from:
JamDsl

Value members

Concrete methods

inline def brew[J](implicit inline config: JamConfig): J

Injects constructor arguments if they are provided in this, otherwise throws an error

Injects constructor arguments if they are provided in this, otherwise throws an error

inline def brewFrom[J](inline self: AnyRef)(implicit inline config: JamConfig): J

Injects constructor arguments if they are provided in self argument, otherwise throws an error

Injects constructor arguments if they are provided in self argument, otherwise throws an error

inline def brewFromRec[J](inline self: AnyRef)(implicit inline config: JamConfig): J

Injects constructor arguments if they are provided in self argument or recursively brews them

Injects constructor arguments if they are provided in self argument or recursively brews them

inline def brewFromWith[A1, J](inline self: AnyRef, inline f: A1 => J)(implicit inline config: JamConfig): J

Injects lambda arguments if they are provided in self argument, otherwise throws an error

Injects lambda arguments if they are provided in self argument, otherwise throws an error

inline def brewFromWith[A1, A2, J](inline self: AnyRef, inline f: (A1, A2) => J)(implicit inline config: JamConfig): J
inline def brewFromWith[A1, A2, A3, J](inline self: AnyRef, inline f: (A1, A2, A3) => J)(implicit inline config: JamConfig): J
inline def brewFromWith[A1, A2, A3, A4, J](inline self: AnyRef, inline f: (A1, A2, A3, A4) => J)(implicit inline config: JamConfig): J
inline def brewFromWith[A1, A2, A3, A4, A5, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5) => J)(implicit inline config: JamConfig): J
inline def brewFromWith[A1, A2, A3, A4, A5, A6, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6) => J)(implicit inline config: JamConfig): J
inline def brewFromWith[A1, A2, A3, A4, A5, A6, A7, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7) => J)(implicit inline config: JamConfig): J
inline def brewFromWith[A1, A2, A3, A4, A5, A6, A7, A8, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8) => J)(implicit inline config: JamConfig): J
inline def brewFromWith[A1, A2, A3, A4, A5, A6, A7, A8, A9, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9) => J)(implicit inline config: JamConfig): J
inline def brewFromWith[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10) => J)(implicit inline config: JamConfig): J
inline def brewFromWith[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11) => J)(implicit inline config: JamConfig): J
inline def brewFromWith[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12) => J)(implicit inline config: JamConfig): J
inline def brewFromWith[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13) => J)(implicit inline config: JamConfig): J
inline def brewFromWith[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14) => J)(implicit inline config: JamConfig): J
inline def brewFromWith[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15) => J)(implicit inline config: JamConfig): J
inline def brewFromWith[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16) => J)(implicit inline config: JamConfig): J
inline def brewFromWith[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17) => J)(implicit inline config: JamConfig): J
inline def brewFromWith[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18) => J)(implicit inline config: JamConfig): J
inline def brewFromWith[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19) => J)(implicit inline config: JamConfig): J
inline def brewFromWith[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20) => J)(implicit inline config: JamConfig): J
inline def brewFromWith[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21) => J)(implicit inline config: JamConfig): J
inline def brewFromWith[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22) => J)(implicit inline config: JamConfig): J
inline def brewFromWithRec[A1, J](inline self: AnyRef, inline f: A1 => J)(implicit inline config: JamConfig): J

Injects lambda arguments if they are provided in self argument or recursively brews them

Injects lambda arguments if they are provided in self argument or recursively brews them

inline def brewFromWithRec[A1, A2, J](inline self: AnyRef, inline f: (A1, A2) => J)(implicit inline config: JamConfig): J
inline def brewFromWithRec[A1, A2, A3, J](inline self: AnyRef, inline f: (A1, A2, A3) => J)(implicit inline config: JamConfig): J
inline def brewFromWithRec[A1, A2, A3, A4, J](inline self: AnyRef, inline f: (A1, A2, A3, A4) => J)(implicit inline config: JamConfig): J
inline def brewFromWithRec[A1, A2, A3, A4, A5, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5) => J)(implicit inline config: JamConfig): J
inline def brewFromWithRec[A1, A2, A3, A4, A5, A6, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6) => J)(implicit inline config: JamConfig): J
inline def brewFromWithRec[A1, A2, A3, A4, A5, A6, A7, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7) => J)(implicit inline config: JamConfig): J
inline def brewFromWithRec[A1, A2, A3, A4, A5, A6, A7, A8, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8) => J)(implicit inline config: JamConfig): J
inline def brewFromWithRec[A1, A2, A3, A4, A5, A6, A7, A8, A9, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9) => J)(implicit inline config: JamConfig): J
inline def brewFromWithRec[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10) => J)(implicit inline config: JamConfig): J
inline def brewFromWithRec[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11) => J)(implicit inline config: JamConfig): J
inline def brewFromWithRec[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12) => J)(implicit inline config: JamConfig): J
inline def brewFromWithRec[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13) => J)(implicit inline config: JamConfig): J
inline def brewFromWithRec[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14) => J)(implicit inline config: JamConfig): J
inline def brewFromWithRec[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15) => J)(implicit inline config: JamConfig): J
inline def brewFromWithRec[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16) => J)(implicit inline config: JamConfig): J
inline def brewFromWithRec[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17) => J)(implicit inline config: JamConfig): J
inline def brewFromWithRec[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18) => J)(implicit inline config: JamConfig): J
inline def brewFromWithRec[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19) => J)(implicit inline config: JamConfig): J
inline def brewFromWithRec[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20) => J)(implicit inline config: JamConfig): J
inline def brewFromWithRec[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21) => J)(implicit inline config: JamConfig): J
inline def brewFromWithRec[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, J](inline self: AnyRef, inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22) => J)(implicit inline config: JamConfig): J
inline def brewRec[J](implicit inline config: JamConfig): J

Injects constructor arguments if they are provided in this or recursively brews them

Injects constructor arguments if they are provided in this or recursively brews them

inline def brewWith[A1, J](inline f: A1 => J)(implicit inline config: JamConfig): J

Injects lambda arguments if they are provided in this, otherwise throws an error

Injects lambda arguments if they are provided in this, otherwise throws an error

inline def brewWith[A1, A2, J](inline f: (A1, A2) => J)(implicit inline config: JamConfig): J
inline def brewWith[A1, A2, A3, J](inline f: (A1, A2, A3) => J)(implicit inline config: JamConfig): J
inline def brewWith[A1, A2, A3, A4, J](inline f: (A1, A2, A3, A4) => J)(implicit inline config: JamConfig): J
inline def brewWith[A1, A2, A3, A4, A5, J](inline f: (A1, A2, A3, A4, A5) => J)(implicit inline config: JamConfig): J
inline def brewWith[A1, A2, A3, A4, A5, A6, J](inline f: (A1, A2, A3, A4, A5, A6) => J)(implicit inline config: JamConfig): J
inline def brewWith[A1, A2, A3, A4, A5, A6, A7, J](inline f: (A1, A2, A3, A4, A5, A6, A7) => J)(implicit inline config: JamConfig): J
inline def brewWith[A1, A2, A3, A4, A5, A6, A7, A8, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8) => J)(implicit inline config: JamConfig): J
inline def brewWith[A1, A2, A3, A4, A5, A6, A7, A8, A9, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9) => J)(implicit inline config: JamConfig): J
inline def brewWith[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10) => J)(implicit inline config: JamConfig): J
inline def brewWith[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11) => J)(implicit inline config: JamConfig): J
inline def brewWith[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12) => J)(implicit inline config: JamConfig): J
inline def brewWith[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13) => J)(implicit inline config: JamConfig): J
inline def brewWith[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14) => J)(implicit inline config: JamConfig): J
inline def brewWith[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15) => J)(implicit inline config: JamConfig): J
inline def brewWith[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16) => J)(implicit inline config: JamConfig): J
inline def brewWith[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17) => J)(implicit inline config: JamConfig): J
inline def brewWith[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18) => J)(implicit inline config: JamConfig): J
inline def brewWith[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19) => J)(implicit inline config: JamConfig): J
inline def brewWith[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20) => J)(implicit inline config: JamConfig): J
inline def brewWith[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21) => J)(implicit inline config: JamConfig): J
inline def brewWith[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22) => J)(implicit inline config: JamConfig): J
inline def brewWithRec[A1, J](inline f: A1 => J)(implicit inline config: JamConfig): J

Injects lambda arguments if they are provided in this or recursively brews them

Injects lambda arguments if they are provided in this or recursively brews them

inline def brewWithRec[A1, A2, J](inline f: (A1, A2) => J)(implicit inline config: JamConfig): J
inline def brewWithRec[A1, A2, A3, J](inline f: (A1, A2, A3) => J)(implicit inline config: JamConfig): J
inline def brewWithRec[A1, A2, A3, A4, J](inline f: (A1, A2, A3, A4) => J)(implicit inline config: JamConfig): J
inline def brewWithRec[A1, A2, A3, A4, A5, J](inline f: (A1, A2, A3, A4, A5) => J)(implicit inline config: JamConfig): J
inline def brewWithRec[A1, A2, A3, A4, A5, A6, J](inline f: (A1, A2, A3, A4, A5, A6) => J)(implicit inline config: JamConfig): J
inline def brewWithRec[A1, A2, A3, A4, A5, A6, A7, J](inline f: (A1, A2, A3, A4, A5, A6, A7) => J)(implicit inline config: JamConfig): J
inline def brewWithRec[A1, A2, A3, A4, A5, A6, A7, A8, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8) => J)(implicit inline config: JamConfig): J
inline def brewWithRec[A1, A2, A3, A4, A5, A6, A7, A8, A9, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9) => J)(implicit inline config: JamConfig): J
inline def brewWithRec[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10) => J)(implicit inline config: JamConfig): J
inline def brewWithRec[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11) => J)(implicit inline config: JamConfig): J
inline def brewWithRec[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12) => J)(implicit inline config: JamConfig): J
inline def brewWithRec[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13) => J)(implicit inline config: JamConfig): J
inline def brewWithRec[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14) => J)(implicit inline config: JamConfig): J
inline def brewWithRec[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15) => J)(implicit inline config: JamConfig): J
inline def brewWithRec[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16) => J)(implicit inline config: JamConfig): J
inline def brewWithRec[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17) => J)(implicit inline config: JamConfig): J
inline def brewWithRec[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18) => J)(implicit inline config: JamConfig): J
inline def brewWithRec[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19) => J)(implicit inline config: JamConfig): J
inline def brewWithRec[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20) => J)(implicit inline config: JamConfig): J
inline def brewWithRec[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21) => J)(implicit inline config: JamConfig): J
inline def brewWithRec[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, J](inline f: (A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22) => J)(implicit inline config: JamConfig): J