Package

typedapi

client

Permalink

package client

Linear Supertypes
FoldResultEvidenceLowPrio, ApiTransformer, TypeLevelFoldLeftListLowPrio, TypeLevelFoldLeftLowPrio, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. client
  2. FoldResultEvidenceLowPrio
  3. ApiTransformer
  4. TypeLevelFoldLeftListLowPrio
  5. TypeLevelFoldLeftLowPrio
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. final case class :|:[Fn, T <: ApiComposition](fn: Fn, tail: T) extends ApiComposition with Product with Serializable

    Permalink
  2. 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))

  3. trait ApiRequest[D <: HList, C, F[_], Out] extends AnyRef

    Permalink

    Basic api request structure.

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

  4. final case class ClientManager[C](client: C, host: String, port: Int) extends Product with Serializable

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

    Permalink
    Annotations
    @implicitNotFound( ... )
  6. final class ExecutableDerivation[El <: HList, KIn <: HList, VIn <: HList, O, D <: HList] extends AnyRef

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

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

    Permalink

    Transform apis composed in a HList into ApiComposition representation.

  9. trait HListToCompositionLowPrio extends AnyRef

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

    Permalink
    Annotations
    @implicitNotFound( ... )
  11. trait PostWithBodyRequest[C, F[_], Bd, A] extends ApiRequest[client.RequestDataBuilder.RequestData[PostWithBodyCall[Bd], client.RequestDataBuilder.DataWithBody[Bd]], C, F, A]

    Permalink
    Annotations
    @implicitNotFound( ... )
  12. trait PutRequest[C, F[_], A] extends ApiRequest[client.RequestDataBuilder.RequestData[PutCall, client.RequestDataBuilder.Data], C, F, A]

    Permalink
    Annotations
    @implicitNotFound( ... )
  13. trait PutWithBodyRequest[C, F[_], Bd, A] extends ApiRequest[client.RequestDataBuilder.RequestData[PutWithBodyCall[Bd], client.RequestDataBuilder.DataWithBody[Bd]], C, F, A]

    Permalink
    Annotations
    @implicitNotFound( ... )
  14. trait RequestDataBuilder[El <: HList, KIn <: HList, VIn <: HList, O] 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( ... )
  15. trait RequestDataBuilderList[H <: HList] extends AnyRef

    Permalink
    Annotations
    @implicitNotFound( ... )
  16. trait RequestDataBuilderListLowPrio extends AnyRef

    Permalink
  17. trait RequestDataBuilderLowPrio extends AnyRef

    Permalink
  18. trait RequestDataBuilderMediumPrio extends RequestDataBuilderLowPrio

    Permalink
  19. type Transformed[El <: HList, KIn <: HList, VIn <: HList, Out, D <: HList] = (El, KIn, VIn, Out)

    Permalink

Value Members

  1. object =: extends ApiComposition with Product with Serializable

    Permalink
  2. object HListToComposition extends HListToCompositionLowPrio

    Permalink
  3. object RequestDataBuilder extends RequestDataBuilderMediumPrio

    Permalink
  4. object RequestDataBuilderList extends RequestDataBuilderListLowPrio

    Permalink
  5. implicit def deleteTransformer[A]: Aux[DeleteElement[A], (HNil, HNil, HNil), (::[DeleteCall, HNil], HNil, HNil, A)]

    Permalink
    Definition Classes
    ApiTransformer
  6. def derive[H <: HList, Fold, El <: HList, KIn <: HList, VIn <: HList, Out, D <: HList](apiList: ApiTypeCarrier[H])(implicit folder: Aux[H, (HNil, HNil, HNil), Fold], ev: Aux[Fold, El, KIn, VIn, Out], builder: Aux[El, KIn, VIn, Out, D], inToFn: FnFromProduct[(VIn) ⇒ ExecutableDerivation[El, KIn, VIn, Out, D]]): shapeless.ops.function.FnFromProduct.Out

    Permalink
  7. def deriveAll[H <: HList, In <: HList, Fold <: HList, HL <: HList, Out <: HList](apiLists: CompositionCons[H])(implicit folders: Aux[H, Fold], builderList: Aux[Fold, HL], composition: HListToComposition[HL]): Out

    Permalink
  8. implicit def evidence[El0 <: HList, KIn0 <: HList, VIn0 <: HList, Out0]: Aux[(El0, KIn0, VIn0, Out0), El0, KIn0, VIn0, Out0]

    Permalink
    Definition Classes
    FoldResultEvidenceLowPrio
  9. 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
  10. implicit def folderLeftList[H <: HList, Agg, T <: HList](implicit folder0: TypeLevelFoldLeft[H, Agg], list: TypeLevelFoldLeftList[T]): TypeLevelFoldLeftList[::[H, T]] { type Out = shapeless.::[folder0.Out,list.Out] }

    Permalink
    Definition Classes
    TypeLevelFoldLeftListLowPrio
  11. implicit def getTransformer[A]: Aux[GetElement[A], (HNil, HNil, HNil), (::[GetCall, HNil], HNil, HNil, A)]

    Permalink
    Definition Classes
    ApiTransformer
  12. implicit def headerElementTransformer[S <: Symbol, A, El <: HList, KIn <: HList, VIn <: HList, Out]: Aux[HeaderParam[S, A], (El, KIn, VIn, Out), (::[HeaderInput, El], ::[S, KIn], ::[A, VIn], Out)]

    Permalink
    Definition Classes
    ApiTransformer
  13. implicit def hnilCase[Agg]: Aux[HNil, Agg, Agg]

    Permalink
    Definition Classes
    TypeLevelFoldLeftLowPrio
  14. implicit def lastFoldLeftList[H <: HList, Agg](implicit folder0: TypeLevelFoldLeft[H, Agg]): TypeLevelFoldLeftList[::[H, HNil]] { type Out = shapeless.::[folder0.Out,shapeless.HNil] }

    Permalink
    Definition Classes
    TypeLevelFoldLeftListLowPrio
  15. implicit def pathElementTransformer[S, El <: HList, KIn <: HList, VIn <: HList, Out]: Aux[PathElement[S], (El, KIn, VIn, Out), (::[S, El], KIn, VIn, Out)]

    Permalink
    Definition Classes
    ApiTransformer
  16. implicit def postTransformer[A]: Aux[PostElement[A], (HNil, HNil, HNil), (::[PostCall, HNil], HNil, HNil, A)]

    Permalink
    Definition Classes
    ApiTransformer
  17. implicit def postWithBodyTransformer[Bd, A]: Aux[PostWithBodyElement[Bd, A], (HNil, HNil, HNil), (::[PostWithBodyCall[Bd], HNil], ::[(BodyField)#T, HNil], ::[Bd, HNil], A)]

    Permalink
    Definition Classes
    ApiTransformer
  18. implicit def putTransformer[A]: Aux[PutElement[A], (HNil, HNil, HNil), (::[PutCall, HNil], HNil, HNil, A)]

    Permalink
    Definition Classes
    ApiTransformer
  19. implicit def putWithBodyTransformer[Bd, A]: Aux[PutWithBodyElement[Bd, A], (HNil, HNil, HNil), (::[PutWithBodyCall[Bd], HNil], ::[(BodyField)#T, HNil], ::[Bd, HNil], A)]

    Permalink
    Definition Classes
    ApiTransformer
  20. implicit def queryElementTransformer[S <: Symbol, A, El <: HList, KIn <: HList, VIn <: HList, Out]: Aux[QueryParam[S, A], (El, KIn, VIn, Out), (::[QueryInput, El], ::[S, KIn], ::[A, VIn], Out)]

    Permalink
    Definition Classes
    ApiTransformer
  21. implicit def queryListElementTransformer[S <: Symbol, A, El <: HList, KIn <: HList, VIn <: HList, Out]: Aux[QueryParam[S, List[A]], (El, KIn, VIn, Out), (::[QueryInput, El], ::[S, KIn], ::[List[A], VIn], Out)]

    Permalink
    Definition Classes
    ApiTransformer
  22. implicit def rawHeadersElementTransformer[El <: HList, KIn <: HList, VIn <: HList, Out]: Aux[RawHeadersParam.type, (El, KIn, VIn, Out), (::[RawHeadersInput, El], ::[(RawHeadersField)#T, KIn], ::[Map[String, String], VIn], Out)]

    Permalink
    Definition Classes
    ApiTransformer
  23. implicit def segmentElementTransformer[S <: Symbol, A, El <: HList, KIn <: HList, VIn <: HList, Out]: Aux[SegmentParam[S, A], (El, KIn, VIn, Out), (::[SegmentInput, El], ::[S, KIn], ::[A, VIn], Out)]

    Permalink
    Definition Classes
    ApiTransformer
  24. package test

    Permalink

Inherited from FoldResultEvidenceLowPrio

Inherited from ApiTransformer

Inherited from TypeLevelFoldLeftListLowPrio

Inherited from TypeLevelFoldLeftLowPrio

Inherited from AnyRef

Inherited from Any

Ungrouped