ServerEndpoint

Companion
class
class Object
trait Matchable
class Any

Type members

Types

type Full[_A, _U, _I, _E, _O, -R, F[_]] = ServerEndpoint[R, F] { type A = _A; type U = _U; type I = _I; type E = _E; type O = _O; }

The full type of a server endpoint, capturing the types of all input/output parameters. Most of the time, the simpler ServerEndpoint[R, F] can be used instead.

The full type of a server endpoint, capturing the types of all input/output parameters. Most of the time, the simpler ServerEndpoint[R, F] can be used instead.

Value members

Concrete methods

def apply[A, U, I, E, O, R, F[_]](endpoint: Endpoint[A, I, E, O, R], securityLogic: MonadError[F] => A => F[Either[E, U]], logic: MonadError[F] => U => I => F[Either[E, O]]): Full[A, U, I, E, O, R, F]

Create a server endpoint, with the given security and main logic functions, which match the shape defined by endpoint.

Create a server endpoint, with the given security and main logic functions, which match the shape defined by endpoint.

def public[I, E, O, R, F[_]](endpoint: Endpoint[Unit, I, E, O, R], logic: MonadError[F] => I => F[Either[E, O]]): Full[Unit, Unit, I, E, O, R, F]

Create a public server endpoint, with an empty (no-op) security logic, which always succeeds.

Create a public server endpoint, with an empty (no-op) security logic, which always succeeds.