Package

typedapi

client

Permalink

package client

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. client
  2. ApiCompilerOps
  3. ApiCompilerListLowPrio
  4. ApiCompilerMediumPrio
  5. ApiCompilerLowPrio
  6. ApiTransformer
  7. TypeLevelFoldLeftListLowPrio
  8. TypeLevelFoldLeftLowPrio
  9. HListToCompositionLowPrio
  10. AnyRef
  11. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. final case class :|:[El <: HList, In <: HList, D <: HList, T <: ApiComposition](compiler: Aux[El, In, D], tail: T) extends ApiComposition with Product with Serializable

    Permalink
  2. trait ApiCompiler[El <: HList, In <: HList] extends AnyRef

    Permalink

    Compiles type level api description into a function returning data (uri, query, header, body) and return-type A which are used for a request.

    Compiles type level api description into a function returning data (uri, query, header, body) and return-type A which are used for a request.

    Annotations
    @implicitNotFound( ... )
  3. trait ApiCompilerList[H <: HList] extends AnyRef

    Permalink
  4. trait ApiCompilerListLowPrio extends AnyRef

    Permalink
  5. trait ApiCompilerLowPrio extends AnyRef

    Permalink
  6. trait ApiCompilerMediumPrio extends ApiCompilerLowPrio

    Permalink
  7. sealed trait ApiComposition extends AnyRef

    Permalink

    Syntactic sugar to enable: val api = (:= "foo" :> Get[Foo]) :|: (:= "bar" :> Get[Bar])

    Syntactic sugar to enable: val api = (:= "foo" :> Get[Foo]) :|: (:= "bar" :> Get[Bar])

    val (foo :|: bar :|: :=) = compile(transform(api))

  8. sealed trait ApiElement extends AnyRef

    Permalink
  9. sealed trait ApiList[H <: HList] extends AnyRef

    Permalink

    Type level api representation encoded as HList.

    Type level api representation encoded as HList. This wrapper is used to encapsulate shapeless code and enforces api structure: path -> all segment -> all query -> [query, header, body, method] header -> [header, body, method] body -> [method] method -> nothing

  10. sealed trait ApiListWithOps[H <: HList] extends ApiList[H]

    Permalink

    Basic operations.

  11. sealed trait ApiOp extends AnyRef

    Permalink
  12. implicit class ApiOps0[El <: HList, D <: HList] extends AnyRef

    Permalink
    Definition Classes
    ApiCompilerOps
  13. implicit class ApiOps1[El <: HList, D <: HList, K0, V0] extends BaseApiOps[El, ::[FieldType[K0, V0], HNil], D]

    Permalink
    Definition Classes
    ApiCompilerOps
  14. implicit class ApiOps2[El <: HList, D <: HList, K0, V0, K1, V1] extends BaseApiOps[El, In2[K0, V0, K1, V1], D]

    Permalink
    Definition Classes
    ApiCompilerOps
  15. implicit class ApiOps3[El <: HList, D <: HList, K0, V0, K1, V1, K2, V2] extends BaseApiOps[El, In3[K0, V0, K1, V1, K2, V2], D]

    Permalink
    Definition Classes
    ApiCompilerOps
  16. implicit class ApiOps4[El <: HList, D <: HList, K0, V0, K1, V1, K2, V2, K3, V3] extends BaseApiOps[El, In4[K0, V0, K1, V1, K2, V2, K3, V3], D]

    Permalink
    Definition Classes
    ApiCompilerOps
  17. implicit class ApiOps5[El <: HList, D <: HList, K0, V0, K1, V1, K2, V2, K3, V3, K4, V4] extends BaseApiOps[El, In5[K0, V0, K1, V1, K2, V2, K3, V3, K4, V4], D]

    Permalink
    Definition Classes
    ApiCompilerOps
  18. implicit class ApiOps6[El <: HList, D <: HList, K0, V0, K1, V1, K2, V2, K3, V3, K4, V4, K5, V5] extends BaseApiOps[El, In6[K0, V0, K1, V1, K2, V2, K3, V3, K4, V4, K5, V5], D]

    Permalink
    Definition Classes
    ApiCompilerOps
  19. implicit class ApiOps7[El <: HList, D <: HList, K0, V0, K1, V1, K2, V2, K3, V3, K4, V4, K5, V5, K6, V6] extends BaseApiOps[El, In7[K0, V0, K1, V1, K2, V2, K3, V3, K4, V4, K5, V5, K6, V6], D]

    Permalink
    Definition Classes
    ApiCompilerOps
  20. implicit class ApiOps8[El <: HList, D <: HList, K0, V0, K1, V1, K2, V2, K3, V3, K4, V4, K5, V5, K6, V6, K7, V7] extends BaseApiOps[El, In8[K0, V0, K1, V1, K2, V2, K3, V3, K4, V4, K5, V5, K6, V6, K7, V7], D]

    Permalink
    Definition Classes
    ApiCompilerOps
  21. implicit class ApiOpsN[El <: HList, D <: HList, In <: HList] extends BaseApiOps[El, In, D]

    Permalink
    Definition Classes
    ApiCompilerOps
  22. trait ApiRequest[D <: HList, C, F[_]] extends AnyRef

    Permalink

    Basic api request structure.

    Basic api request structure. Expected input data and return-type are defined for each method.

  23. trait ApiTransformer extends AnyRef

    Permalink

    Separates uri and input description from ApiList.

    Separates uri and input description from ApiList. Example: val api: FinalCons[Get[Foo] :: Segment["name".type, String] :: "find".type :: HNil] = := :> "find" :> Segment[String]('name) :> Get[Foo] val trans: (ElementTypes["name".type :: SegmentInput] :: HNil, InputTypes[FieldType['name.type, String] :: HNil]) We can use this to define our expected input.

  24. trait ClientManager[C] extends AnyRef

    Permalink
  25. final case class CompositionCons[H <: HList]() extends ApiList[H] with Product with Serializable

    Permalink

    Compose multiple type level api descriptions in a HList of HLists.

  26. type Data = ::[List[String], ::[Map[String, List[String]], ::[Map[String, String], HNil]]]

    Permalink
    Definition Classes
    ApiCompilerLowPrio
  27. type DataWithBody[Bd] = ::[List[String], ::[Map[String, List[String]], ::[Map[String, String], ::[Bd, HNil]]]]

    Permalink
    Definition Classes
    ApiCompilerLowPrio
  28. final case class Delete[A]() extends ApiElement with Product with Serializable

    Permalink
  29. sealed trait DeleteCall[A] extends ApiOp

    Permalink
  30. trait DeleteRequest[C, F[_], A] extends ApiRequest[RequestData[DeleteCall[A], Data], C, F]

    Permalink
    Annotations
    @implicitNotFound( ... )
  31. final class ElementTypes[H <: HList] extends AnyRef

    Permalink
  32. final case class FinalCons[H <: HList]() extends ApiList[H] with Product with Serializable

    Permalink

    A final element is a method describing the request type.

  33. type Folder[H <: HList] = TypeLevelFoldLeft[H, (ElementTypes[HNil], InputTypes[HNil])]

    Permalink
  34. final case class Get[A]() extends ApiElement with Product with Serializable

    Permalink
  35. sealed trait GetCall[A] extends ApiOp

    Permalink
  36. trait GetRequest[C, F[_], A] extends ApiRequest[RequestData[GetCall[A], Data], C, F]

    Permalink
    Annotations
    @implicitNotFound( ... )
  37. sealed trait HListToComposition[H <: HList] extends AnyRef

    Permalink

    Transform apis composed in a HList into ApiComposition representation.

  38. trait HListToCompositionLowPrio extends AnyRef

    Permalink
  39. final case class HeaderCons[H <: HList]() extends ApiListWithOps[H] with Product with Serializable

    Permalink

    Last set element is a header.

  40. final class HeaderHelper[A] extends AnyRef

    Permalink
  41. sealed trait HeaderInput extends ApiOp

    Permalink
  42. final case class HeaderParam[S <: Symbol, A](name: Lt[S]) extends ApiElement with Product with Serializable

    Permalink

    Header which represents its key as singleton type and describes the value type.

    Header which represents its key as singleton type and describes the value type.

    name

    header key

  43. type In2[K0, V0, K1, V1] = ::[FieldType[K0, V0], ::[FieldType[K1, V1], HNil]]

    Permalink
    Definition Classes
    ApiCompilerOps
  44. type In3[K0, V0, K1, V1, K2, V2] = ::[FieldType[K0, V0], ::[FieldType[K1, V1], ::[FieldType[K2, V2], HNil]]]

    Permalink
    Definition Classes
    ApiCompilerOps
  45. type In4[K0, V0, K1, V1, K2, V2, K3, V3] = ::[FieldType[K0, V0], ::[FieldType[K1, V1], ::[FieldType[K2, V2], ::[FieldType[K3, V3], HNil]]]]

    Permalink
    Definition Classes
    ApiCompilerOps
  46. type In5[K0, V0, K1, V1, K2, V2, K3, V3, K4, V4] = ::[FieldType[K0, V0], ::[FieldType[K1, V1], ::[FieldType[K2, V2], ::[FieldType[K3, V3], ::[FieldType[K4, V4], HNil]]]]]

    Permalink
    Definition Classes
    ApiCompilerOps
  47. type In6[K0, V0, K1, V1, K2, V2, K3, V3, K4, V4, K5, V5] = ::[FieldType[K0, V0], ::[FieldType[K1, V1], ::[FieldType[K2, V2], ::[FieldType[K3, V3], ::[FieldType[K4, V4], ::[FieldType[K5, V5], HNil]]]]]]

    Permalink
    Definition Classes
    ApiCompilerOps
  48. type In7[K0, V0, K1, V1, K2, V2, K3, V3, K4, V4, K5, V5, K6, V6] = ::[FieldType[K0, V0], ::[FieldType[K1, V1], ::[FieldType[K2, V2], ::[FieldType[K3, V3], ::[FieldType[K4, V4], ::[FieldType[K5, V5], ::[FieldType[K6, V6], HNil]]]]]]]

    Permalink
    Definition Classes
    ApiCompilerOps
  49. type In8[K0, V0, K1, V1, K2, V2, K3, V3, K4, V4, K5, V5, K6, V6, K7, V7] = ::[FieldType[K0, V0], ::[FieldType[K1, V1], ::[FieldType[K2, V2], ::[FieldType[K3, V3], ::[FieldType[K4, V4], ::[FieldType[K5, V5], ::[FieldType[K6, V6], ::[FieldType[K7, V7], HNil]]]]]]]]

    Permalink
    Definition Classes
    ApiCompilerOps
  50. final class InputTypes[H <: HList] extends AnyRef

    Permalink
  51. final case class Path[S](wit: Lt[S]) extends ApiElement with Product with Serializable

    Permalink

    Static path element represented as singleton type.

    Static path element represented as singleton type.

    wit

    singleton type of static path element

  52. final case class PathCons[H <: HList]() extends ApiListWithOps[H] with Product with Serializable

    Permalink

    Last set element is a path.

  53. final case class Post[A]() extends ApiElement with Product with Serializable

    Permalink
  54. sealed trait PostCall[A] extends ApiOp

    Permalink
  55. trait PostRequest[C, F[_], A] extends ApiRequest[RequestData[PostCall[A], Data], C, F]

    Permalink
    Annotations
    @implicitNotFound( ... )
  56. final case class PostWithBody[Bd, A]() extends ApiElement with Product with Serializable

    Permalink
  57. sealed trait PostWithBodyCall[Bd, A] extends ApiOp

    Permalink
  58. trait PostWithBodyRequest[C, F[_], Bd, A] extends ApiRequest[RequestData[PostWithBodyCall[Bd, A], DataWithBody[Bd]], C, F]

    Permalink
    Annotations
    @implicitNotFound( ... )
  59. final case class Put[A]() extends ApiElement with Product with Serializable

    Permalink
  60. sealed trait PutCall[A] extends ApiOp

    Permalink
  61. trait PutRequest[C, F[_], A] extends ApiRequest[RequestData[PutCall[A], Data], C, F]

    Permalink
    Annotations
    @implicitNotFound( ... )
  62. final case class PutWithBody[Bd, A]() extends ApiElement with Product with Serializable

    Permalink
  63. sealed trait PutWithBodyCall[Bd, A] extends ApiOp

    Permalink
  64. trait PutWithBodyRequest[C, F[_], Bd, A] extends ApiRequest[RequestData[PutWithBodyCall[Bd, A], DataWithBody[Bd]], C, F]

    Permalink
    Annotations
    @implicitNotFound( ... )
  65. final case class QueryCons[H <: HList]() extends ApiListWithOps[H] with Product with Serializable

    Permalink

    Last set element is a query parameter.

  66. final class QueryHelper[A] extends AnyRef

    Permalink
  67. sealed trait QueryInput extends ApiOp

    Permalink
  68. final case class QueryParam[S <: Symbol, A](name: Lt[S]) extends ApiElement with Product with Serializable

    Permalink

    Query parameter which represents its key as singleton type and describes the value type.

    Query parameter which represents its key as singleton type and describes the value type.

    name

    query key

  69. final case class RawHeadersCons[H <: HList]() extends ApiListWithOps[H] with Product with Serializable

    Permalink

    Last set element is a header.

  70. sealed trait RawHeadersInput extends ApiOp

    Permalink
  71. final case class ReqBody[A]() extends ApiElement with Product with Serializable

    Permalink

    Request body type description.

  72. type RequestData[R, D <: HList] = ::[FieldType[R, D], HNil]

    Permalink
    Definition Classes
    ApiCompilerLowPrio
  73. final case class SegmentCons[H <: HList]() extends ApiListWithOps[H] with Product with Serializable

    Permalink

    Last set element is a segment.

  74. final class SegmentHelper[A] extends AnyRef

    Permalink
  75. sealed trait SegmentInput extends ApiOp

    Permalink
  76. final case class SegmentParam[S <: Symbol, A](name: Lt[S]) extends ApiElement with Product with Serializable

    Permalink

    Dynamically set segment within an URI which has a unique name to reference it on input.

    Dynamically set segment within an URI which has a unique name to reference it on input.

    name

    unique name reference

  77. type Transformed[El <: HList, In <: HList, D <: HList] = (ElementTypes[El], InputTypes[In])

    Permalink
  78. sealed trait TypeLevelFoldFunction[H, In] extends Serializable

    Permalink

    Reimplements shapeles Case2 but on the type level (no real HList instance)

    Reimplements shapeles Case2 but on the type level (no real HList instance)

    Annotations
    @implicitNotFound( ... )
  79. sealed trait TypeLevelFoldLeft[H <: HList, Agg] extends Serializable

    Permalink

    Reimplements shapeless LeftFolder but on the type level (no real HList instance)

    Reimplements shapeless LeftFolder but on the type level (no real HList instance)

    Annotations
    @implicitNotFound( ... )
  80. trait TypeLevelFoldLeftList[H <: HList] extends AnyRef

    Permalink

    Helper to work on a composition of HLists we want to fold over.

  81. trait TypeLevelFoldLeftListLowPrio extends AnyRef

    Permalink
  82. trait TypeLevelFoldLeftLowPrio extends AnyRef

    Permalink
  83. final case class WithBodyCons[Bd, H <: HList]() extends ApiList[H] with Product with Serializable

    Permalink

    Last set element is a request body.

Value Members

  1. def :=: EmptyCons.type

    Permalink
  2. object =: extends ApiComposition with Product with Serializable

    Permalink
  3. object ApiCompiler

    Permalink
  4. object ApiCompilerList

    Permalink
  5. final val BodyField: Aux[@@[Symbol, String("body")]]

    Permalink
  6. object ClientManager

    Permalink
  7. object EmptyCons extends ApiListWithOps[HNil] with Product with Serializable

    Permalink

    Initial element with empty api description.

  8. val EmptyTypes: (ElementTypes[HNil], InputTypes[HNil])

    Permalink
  9. def Header[A]: HeaderHelper[A]

    Permalink
  10. def Query[A]: QueryHelper[A]

    Permalink
  11. object RawHeaders extends ApiElement with Product with Serializable

    Permalink

    Convenience class to add headers as Map[String, String] patch.

    Convenience class to add headers as Map[String, String] patch. This class cannot guarantee type safety.

  12. final val RawHeadersField: Aux[@@[Symbol, String("rawHeaders")]]

    Permalink
  13. def Segment[A]: SegmentHelper[A]

    Permalink
  14. object TypeLevelFoldFunction extends Serializable

    Permalink
  15. object TypeLevelFoldLeft extends Serializable

    Permalink
  16. object TypeLevelFoldLeftList

    Permalink
  17. object TypedApi

    Permalink
  18. def compile[H <: HList, In <: HList, Fold <: HList, HL <: HList, Out <: HList](transformed: Aux[H, In, Fold])(implicit compilers: Aux[Fold, HL], composition: HListToComposition[HL]): Out

    Permalink
  19. def compile[El <: HList, In <: HList, D <: HList](transformed: Transformed[El, In, D])(implicit compiler: Aux[El, In, D]): Aux[El, In, D]

    Permalink
  20. implicit def compilerList[El0 <: HList, In0 <: HList, D0 <: HList, T <: HList](implicit compiler0: Aux[El0, In0, D0], list: ApiCompilerList[T]): ApiCompilerList[::[Transformed[El0, In0, D0], T]] { ... /* 2 definitions in type refinement */ }

    Permalink
    Definition Classes
    ApiCompilerListLowPrio
  21. implicit def consComposition[El <: HList, In <: HList, D <: HList, T <: HList](implicit next: HListToComposition[T]): HListToComposition[::[Aux[El, In, D], T]] { type Out = typedapi.client.:|:[El,In,D,next.Out] }

    Permalink
    Definition Classes
    HListToCompositionLowPrio
  22. implicit def deleteCompiler[A]: ApiCompiler[::[DeleteCall[A], HNil], HNil] { type Out = ApiCompilerLowPrio.this.RequestData[typedapi.client.DeleteCall[A],ApiCompilerLowPrio.this.Data] }

    Permalink
    Definition Classes
    ApiCompilerLowPrio
  23. implicit def deleteTransformer[A]: Aux[Delete[A], (ElementTypes[HNil], InputTypes[HNil]), (ElementTypes[::[DeleteCall[A], HNil]], InputTypes[HNil])]

    Permalink
    Definition Classes
    ApiTransformer
  24. implicit def foldCase[H, T <: HList, Agg, FtOut, FOut](implicit f: Aux[H, Agg, FtOut], next: Lazy[Aux[T, FtOut, FOut]]): Aux[::[H, T], Agg, FOut]

    Permalink
    Definition Classes
    TypeLevelFoldLeftLowPrio
  25. implicit def folderLeftList[Api <: HList, Agg, T <: HList](implicit folder0: TypeLevelFoldLeft[Api, Agg], list: TypeLevelFoldLeftList[T]): TypeLevelFoldLeftList[::[Api, T]] { ... /* 2 definitions in type refinement */ }

    Permalink
    Definition Classes
    TypeLevelFoldLeftListLowPrio
  26. implicit def getCompiler[A]: ApiCompiler[::[GetCall[A], HNil], HNil] { type Out = ApiCompilerLowPrio.this.RequestData[typedapi.client.GetCall[A],ApiCompilerLowPrio.this.Data] }

    Permalink
    Definition Classes
    ApiCompilerLowPrio
  27. implicit def getTransformer[A]: Aux[Get[A], (ElementTypes[HNil], InputTypes[HNil]), (ElementTypes[::[GetCall[A], HNil]], InputTypes[HNil])]

    Permalink
    Definition Classes
    ApiTransformer
  28. implicit def headerElementTransformer[S <: Symbol, A, El <: HList, In <: HList]: Aux[HeaderParam[S, A], (ElementTypes[El], InputTypes[In]), (ElementTypes[::[HeaderInput, El]], InputTypes[::[FieldType[S, A], In]])]

    Permalink
    Definition Classes
    ApiTransformer
  29. implicit def headersInputCompiler[T <: HList, K <: Symbol, V, In <: HList](implicit wit: Aux[K], compiler: ApiCompiler[T, In]): ApiCompiler[::[HeaderInput, T], ::[FieldType[K, V], In]] { type Out = compiler.Out }

    Permalink
    Definition Classes
    ApiCompilerLowPrio
  30. implicit def hnilCase[Agg]: Aux[HNil, Agg, Agg]

    Permalink
    Definition Classes
    TypeLevelFoldLeftLowPrio
  31. implicit val hnilComposition: HListToComposition[HNil] { type Out = typedapi.client.=:.type }

    Permalink
    Definition Classes
    HListToCompositionLowPrio
  32. implicit def lastCompilerList[El0 <: HList, In0 <: HList, D0 <: HList](implicit compiler0: Aux[El0, In0, D0]): ApiCompilerList[::[Transformed[El0, In0, D0], HNil]] { ... /* 2 definitions in type refinement */ }

    Permalink
    Definition Classes
    ApiCompilerListLowPrio
  33. implicit def lastFoldLeftList[Api <: HList](implicit folder0: Folder[Api]): TypeLevelFoldLeftList[::[Api, HNil]] { ... /* 2 definitions in type refinement */ }

    Permalink
    Definition Classes
    TypeLevelFoldLeftListLowPrio
  34. package ops

    Permalink
  35. implicit def pathCompiler[S, T <: HList, In <: HList](implicit wit: Aux[S], compiler: ApiCompiler[T, In]): ApiCompiler[::[S, T], In] { type Out = compiler.Out }

    Permalink
    Definition Classes
    ApiCompilerLowPrio
  36. implicit def pathElementTransformer[S, El <: HList, In <: HList]: Aux[Path[S], (ElementTypes[El], InputTypes[In]), (ElementTypes[::[S, El]], InputTypes[In])]

    Permalink
    Definition Classes
    ApiTransformer
  37. implicit def postCompiler[A]: ApiCompiler[::[PostCall[A], HNil], HNil] { type Out = ApiCompilerLowPrio.this.RequestData[typedapi.client.PostCall[A],ApiCompilerLowPrio.this.Data] }

    Permalink
    Definition Classes
    ApiCompilerLowPrio
  38. implicit def postTransformer[A]: Aux[Post[A], (ElementTypes[HNil], InputTypes[HNil]), (ElementTypes[::[PostCall[A], HNil]], InputTypes[HNil])]

    Permalink
    Definition Classes
    ApiTransformer
  39. implicit def postWithBodyCompiler[Bd, A]: ApiCompiler[::[PostWithBodyCall[Bd, A], HNil], ::[FieldType[(BodyField)#T, Bd], HNil]] { type Out = ApiCompilerLowPrio.this.RequestData[typedapi.client.PostWithBodyCall[Bd,A],ApiCompilerLowPrio.this.DataWithBody[Bd]] }

    Permalink
    Definition Classes
    ApiCompilerLowPrio
  40. implicit def postWithBodyTransformer[Bd, A]: Aux[PostWithBody[Bd, A], (ElementTypes[HNil], InputTypes[HNil]), (ElementTypes[::[PostWithBodyCall[Bd, A], HNil]], InputTypes[::[FieldType[(BodyField)#T, Bd], HNil]])]

    Permalink
    Definition Classes
    ApiTransformer
  41. implicit def putCompiler[A]: ApiCompiler[::[PutCall[A], HNil], HNil] { type Out = ApiCompilerLowPrio.this.RequestData[typedapi.client.PutCall[A],ApiCompilerLowPrio.this.Data] }

    Permalink
    Definition Classes
    ApiCompilerLowPrio
  42. implicit def putTransformer[A]: Aux[Put[A], (ElementTypes[HNil], InputTypes[HNil]), (ElementTypes[::[PutCall[A], HNil]], InputTypes[HNil])]

    Permalink
    Definition Classes
    ApiTransformer
  43. implicit def putWithBodyCompiler[Bd, A]: ApiCompiler[::[PutWithBodyCall[Bd, A], HNil], ::[FieldType[(BodyField)#T, Bd], HNil]] { type Out = ApiCompilerLowPrio.this.RequestData[typedapi.client.PutWithBodyCall[Bd,A],ApiCompilerLowPrio.this.DataWithBody[Bd]] }

    Permalink
    Definition Classes
    ApiCompilerLowPrio
  44. implicit def putWithBodyTransformer[Bd, A]: Aux[PutWithBody[Bd, A], (ElementTypes[HNil], InputTypes[HNil]), (ElementTypes[::[PutWithBodyCall[Bd, A], HNil]], InputTypes[::[FieldType[(BodyField)#T, Bd], HNil]])]

    Permalink
    Definition Classes
    ApiTransformer
  45. implicit def queryElementTransformer[S <: Symbol, A, El <: HList, In <: HList]: Aux[QueryParam[S, A], (ElementTypes[El], InputTypes[In]), (ElementTypes[::[QueryInput, El]], InputTypes[::[FieldType[S, A], In]])]

    Permalink
    Definition Classes
    ApiTransformer
  46. implicit def queryInputCompiler[T <: HList, K <: Symbol, V, In <: HList](implicit wit: Aux[K], compiler: ApiCompiler[T, In]): ApiCompiler[::[QueryInput, T], ::[FieldType[K, V], In]] { type Out = compiler.Out }

    Permalink
    Definition Classes
    ApiCompilerLowPrio
  47. implicit def queryListElementTransformer[S <: Symbol, A, El <: HList, In <: HList]: Aux[QueryParam[S, List[A]], (ElementTypes[El], InputTypes[In]), (ElementTypes[::[QueryInput, El]], InputTypes[::[FieldType[S, List[A]], In]])]

    Permalink
    Definition Classes
    ApiTransformer
  48. implicit def queryListInputCompiler[T <: HList, K <: Symbol, V, In <: HList](implicit wit: Aux[K], compiler: ApiCompiler[T, In]): ApiCompiler[::[QueryInput, T], ::[FieldType[K, List[V]], In]] { type Out = compiler.Out }

    Permalink
    Definition Classes
    ApiCompilerMediumPrio
  49. implicit def rawHeadersElementTransformer[El <: HList, In <: HList]: Aux[RawHeaders.type, (ElementTypes[El], InputTypes[In]), (ElementTypes[::[RawHeadersInput, El]], InputTypes[::[FieldType[(RawHeadersField)#T, Map[String, String]], In]])]

    Permalink
    Definition Classes
    ApiTransformer
  50. implicit def rawHeadersInputCompiler[T <: HList, In <: HList](implicit compiler: ApiCompiler[T, In]): ApiCompiler[::[RawHeadersInput, T], ::[FieldType[(RawHeadersField)#T, Map[String, String]], In]] { type Out = compiler.Out }

    Permalink
    Definition Classes
    ApiCompilerLowPrio
  51. implicit def segmentElementTransformer[S <: Symbol, A, El <: HList, In <: HList]: Aux[SegmentParam[S, A], (ElementTypes[El], InputTypes[In]), (ElementTypes[::[SegmentInput, El]], InputTypes[::[FieldType[S, A], In]])]

    Permalink
    Definition Classes
    ApiTransformer
  52. implicit def segmentInputCompiler[T <: HList, K, V, In <: HList](implicit compiler: ApiCompiler[T, In]): ApiCompiler[::[SegmentInput, T], ::[FieldType[K, V], In]] { type Out = compiler.Out }

    Permalink
    Definition Classes
    ApiCompilerLowPrio
  53. package test

    Permalink
  54. def transform[H <: HList, In <: HList, Out <: HList](apiLists: CompositionCons[H])(implicit folders: Aux[H, In, Out]): Aux[H, In, Out]

    Permalink
  55. def transform[H <: HList](apiList: FinalCons[H])(implicit folder: Folder[H]): Out

    Permalink

Inherited from ApiCompilerOps

Inherited from ApiCompilerListLowPrio

Inherited from ApiCompilerMediumPrio

Inherited from ApiCompilerLowPrio

Inherited from ApiTransformer

Inherited from TypeLevelFoldLeftLowPrio

Inherited from HListToCompositionLowPrio

Inherited from AnyRef

Inherited from Any

Ungrouped