summaryrefslogtreecommitdiff
path: root/u/trace/util.ts
diff options
context:
space:
mode:
Diffstat (limited to 'u/trace/util.ts')
-rw-r--r--u/trace/util.ts14
1 files changed, 12 insertions, 2 deletions
diff --git a/u/trace/util.ts b/u/trace/util.ts
index dd8fb0d..302c8e4 100644
--- a/u/trace/util.ts
+++ b/u/trace/util.ts
@@ -7,6 +7,16 @@ import type {
} from "@emprespresso/pengueno";
export class TraceUtil {
+ static withTrace<T, Trace>(
+ trace: string,
+ ): ITraceableMapper<
+ T,
+ ITraceableTuple<T, Trace | Array<Trace>>,
+ Trace
+ > {
+ return (t) => [t.get(), `[${trace}]`];
+ }
+
static withMetricTrace<T, Trace extends MetricsTraceSupplier>(
metric: IMetric,
): ITraceableMapper<
@@ -24,7 +34,7 @@ export class TraceUtil {
ITraceableTuple<T, Trace | Array<Trace>>,
Trace
> {
- return (t) => [t.get(), `[${f.name}]`];
+ return TraceUtil.withTrace(f.name);
}
static withClassTrace<C extends object, T, Trace>(
@@ -34,7 +44,7 @@ export class TraceUtil {
ITraceableTuple<T, Trace | Array<Trace>>,
Trace
> {
- return (t) => [t.get(), `[${c.constructor.name}]`];
+ return TraceUtil.withTrace(c.constructor.name);
}
static promiseify<T, U, Trace>(