Attributes
- Companion:
- trait
- Graph
- Supertypes
- trait HasIdclass Objecttrait Matchableclass Any
- Self type
Members list
Type members
Classlikes
Attributes
- Graph
- Supertypes
Attributes
- Graph
- Supertypes
- class Objecttrait Matchableclass Any
- Self type
- ErrorAware.type
Inherited types
A EndpointCompiler specialised for effects of kind * -> (*, *)
, like Either or bifunctor IO
A EndpointCompiler specialised for effects of kind * -> (*, *)
, like Either or bifunctor IO
Attributes
- Inherited from:
- Service
An interpreter specialised for effects of kind * -> (*, *)
, like Either or bifunctor IO.
An interpreter specialised for effects of kind * -> (*, *)
, like Either or bifunctor IO.
Attributes
- Inherited from:
- Service
An endpoint is the set of schemas tied to types associated with an Operation. It has a method to wrap the input in an operation instance I => Operation[I, E, O, SI, SO].
An endpoint is the set of schemas tied to types associated with an Operation. It has a method to wrap the input in an operation instance I => Operation[I, E, O, SI, SO].
You can think of the endpoint as a "template for an Operation". It contains everything needed to decode/encode operation calls to/from low-level representations (like http requests).
Attributes
- Inherited from:
- Service
A polymorphic function that can take an Endpoint (associated to this service) and produces an handler for it, namely a function that takes the input type of the operation, and produces an effect.
A polymorphic function that can take an Endpoint (associated to this service) and produces an handler for it, namely a function that takes the input type of the operation, and produces an effect.
Attributes
- Inherited from:
- Service
A short-hand for algebras that are specialised for effects of kind * -> (*, *)
.
This is meant to be used in userland, e.g:
A short-hand for algebras that are specialised for effects of kind * -> (*, *)
.
This is meant to be used in userland, e.g:
val myService = MyService.ErrorAware[Either]
Attributes
- Inherited from:
- Service
A EndpointCompiler specialised for effects of kind * -> *
, like Try or monofunctor IO
A EndpointCompiler specialised for effects of kind * -> *
, like Try or monofunctor IO
Attributes
- Inherited from:
- Service
An interpreter specialised for effects of kind * -> *
, like Try or monofunctor IO.
An interpreter specialised for effects of kind * -> *
, like Try or monofunctor IO.
Attributes
- Inherited from:
- Service
A short-hand for algebras that are specialised for effects of kind * -> *
.
A short-hand for algebras that are specialised for effects of kind * -> *
.
NB: this alias should be used in polymorphic implementations. When using the Smithy4s
code generator, equivalent aliases that are named after the service are generated
(e.g. Weather
corresponding to WeatherGen
).
Attributes
- Inherited from:
- Service
This is a polymorphic function that runs an instance of an operation and produces an effect F.
This is a polymorphic function that runs an instance of an operation and produces an effect F.
Attributes
- Inherited from:
- Service
A datatype (typically a sealed trait) that reifies an operation call within a service. It essentially captures the input and type indexes that the operation deals with. It also typically captures an input value.
A datatype (typically a sealed trait) that reifies an operation call within a service. It essentially captures the input and type indexes that the operation deals with. It also typically captures an input value.
It is possible to think of Operation as an "applied Endpoint", or a "call to an Endpoint".
Attributes
- E:
the error type associated to the operation (typically represented as a sealed-trait)
- I:
the input of the operation
- O:
the output of the operation
- SI:
the streamed input of an operation. Operations can have unary components and streamed components. For instance, an http call can send headers (unary
I
) and a stream of bytes (streamedSI
) to the server.- SO:
the streamed output of the operation.
- Inherited from:
- Mixin
Value members
Concrete methods
Inherited methods
A function that takes an endpoint compiler and produces an Algebra (typically an instance of the generated interfaces), backed by an interpreter.
A function that takes an endpoint compiler and produces an Algebra (typically an instance of the generated interfaces), backed by an interpreter.
This is useful for writing generic functions that result in the instantiation of a client instance that abides by the service interface.
Attributes
- Inherited from:
- Service
A bifunctor-specialised version of interpreter
A bifunctor-specialised version of interpreter
Attributes
- Inherited from:
- Service
A monofunctor-specialised version of algebra
A monofunctor-specialised version of algebra
Attributes
- Inherited from:
- Service
A monofunctor-specialised version of interpreter
A monofunctor-specialised version of interpreter
Attributes
- Inherited from:
- Service
A monofunctor-specialised version of algebra
A monofunctor-specialised version of algebra
Attributes
- Inherited from:
- Service
Given a generic way to turn an endpoint into some handling function (like I => F[I, E, O, SI, SO]
), this method
takes care of the logic necessary to produce an interpreter that takes an Operation associated
to the service and routes it to the correct function, returning the result.
Given a generic way to turn an endpoint into some handling function (like I => F[I, E, O, SI, SO]
), this method
takes care of the logic necessary to produce an interpreter that takes an Operation associated
to the service and routes it to the correct function, returning the result.
Attributes
- Inherited from:
- Service
Concrete fields
Inherited fields
Attributes
- Inherited from:
- Service
Attributes
- Inherited from:
- Service
Implicits
Inherited implicits
Attributes
- Inherited from:
- Mixin