@@ -25,18 +25,18 @@ import Hxl._
2525package object `natchez` {
2626 import NatchezInternal ._
2727 object HxlT {
28- def unbatched [F [_]: Applicative , A ](name : String )(fa : F [ A ]): Hxl [F , A ] = {
28+ def subtrace [F [_]: Monad : Trace , A ](name : String )(fa : Hxl [ F , A ]): Hxl [F , A ] = {
2929 val ds = DataSource .from[F , HxlSpanKey [F , A ], A ](HxlSpanDSKey [F , A ](name)) { keys =>
30- keys.toList.traverse(k => k.fa.map(a => (k, a))).map(_.toMap)
30+ val h = keys.toList.traverse(k => k.fa.map(a => (k, a))).map(_.toMap)
31+ Trace [F ].span(s " subbatch-hxl- $name" ) {
32+ TracedRunner .runSequential(h)
33+ }
3134 }
3235 Hxl (
3336 new HxlSpanKey (fa),
3437 ds
3538 ).map(_.get)
3639 }
37-
38- def unbatchedPure [F [_]: Applicative , A ](name : String )(a : A ): Hxl [F , A ] =
39- unbatched(name)(Applicative [F ].pure(a))
4040 }
4141
4242 object TracedRunner {
@@ -51,7 +51,7 @@ package object `natchez` {
5151}
5252
5353object NatchezInternal {
54- final class HxlSpanKey [F [_], A ](val fa : F [ A ])
54+ final class HxlSpanKey [F [_], A ](val fa : Hxl [ F , A ])
5555 final case class HxlSpanDSKey [F [_], A ](name : String ) extends DSKey [HxlSpanKey [F , A ], A ]
5656
5757 def traceRequests [F [_]: Trace : Applicative , A ](req : Requests [F , A ]): Requests [F , A ] = {
0 commit comments