I guess that is the intention of
def getTraceId(request: Request[F])(implicit F: Applicative[F]): F[Option[TraceId]] = F.pure(request.headers.get(headerName.ci).map(h => TraceId(h.value)))
I'm giving http4s-tracer a try for a project that I have.
I'd like to know how I can create a Tracer class that needs to override a method whose return type is a monad transformers such as
For instance, let's say I have an Interpreter with the following method:
def find(reference: String): EitherT[F, Error, Unit]
What will be the signature of this method in my TracerInterpreter?
def find(reference: String): Trace[F, EitherT[F, Error, Unit]]
I'm struggling finding the right signature and the right implementation for it.
def find(reference: String): F[Either[Error, Unit]]
def find(reference: String): Trace[F, Either[Error, Unit]]
A: ClassTagbut none of them actually take an A