From f0cd1ad3754adaa61a2c76b973efed2e6781070f Mon Sep 17 00:00:00 2001 From: Simon Cruanes Date: Wed, 3 Dec 2025 16:06:50 -0500 Subject: [PATCH] perf: avoid building closures in Signal --- src/client/signal.ml | 31 ++++++++++++++----------------- 1 file changed, 14 insertions(+), 17 deletions(-) diff --git a/src/client/signal.ml b/src/client/signal.ml index d3fafcfa..e3337c60 100644 --- a/src/client/signal.ml +++ b/src/client/signal.ml @@ -37,7 +37,7 @@ let is_logs = function | _ -> false module Encode = struct - let resource_to_string ~encoder ~ctor ~enc resource = + let resource_to_string ~encoder ~ctor ~enc resource : string = let encoder = match encoder with | Some e -> @@ -51,26 +51,23 @@ module Encode = struct Pbrt.Encoder.to_string encoder let logs ?encoder resource_logs = - resource_logs - |> resource_to_string ~encoder - ~ctor:(fun r -> - Logs_service.make_export_logs_service_request ~resource_logs:r ()) - ~enc:Logs_service.encode_pb_export_logs_service_request + resource_to_string ~encoder resource_logs + ~ctor:(fun r -> + Logs_service.make_export_logs_service_request ~resource_logs:r ()) + ~enc:Logs_service.encode_pb_export_logs_service_request let metrics ?encoder resource_metrics = - resource_metrics - |> resource_to_string ~encoder - ~ctor:(fun r -> - Metrics_service.make_export_metrics_service_request - ~resource_metrics:r ()) - ~enc:Metrics_service.encode_pb_export_metrics_service_request + resource_to_string ~encoder resource_metrics + ~ctor:(fun r -> + Metrics_service.make_export_metrics_service_request ~resource_metrics:r + ()) + ~enc:Metrics_service.encode_pb_export_metrics_service_request let traces ?encoder resource_spans = - resource_spans - |> resource_to_string ~encoder - ~ctor:(fun r -> - Trace_service.make_export_trace_service_request ~resource_spans:r ()) - ~enc:Trace_service.encode_pb_export_trace_service_request + resource_to_string ~encoder resource_spans + ~ctor:(fun r -> + Trace_service.make_export_trace_service_request ~resource_spans:r ()) + ~enc:Trace_service.encode_pb_export_trace_service_request end module Decode = struct