/** * @tsplus static effect/core/io/Metrics/Metric.Aspects zip * @tsplus pipeable effect/core/io/Metrics/Metric zip */ export function zip(that: Metric) { return ( self: Metric ): Metric => Metric( [self.keyType, that.keyType] as const, (input: readonly [In, In2], extraTags) => { const [l, r] = input self.unsafeUpdate(l, extraTags) that.unsafeUpdate(r, extraTags) }, (extraTags) => [self.unsafeValue(extraTags), that.unsafeValue(extraTags)] as const ) }