From 2da3bd3fc7cad606834e6548f66e49acc9927bc2 Mon Sep 17 00:00:00 2001 From: Simon Cruanes Date: Thu, 18 Jan 2024 21:36:20 -0500 Subject: [PATCH] compat old ocaml --- src/prometheus/tiny_httpd_prometheus.ml | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/prometheus/tiny_httpd_prometheus.ml b/src/prometheus/tiny_httpd_prometheus.ml index e0a1f3cd..249d14f4 100644 --- a/src/prometheus/tiny_httpd_prometheus.ml +++ b/src/prometheus/tiny_httpd_prometheus.ml @@ -26,17 +26,21 @@ let emit_tags_ buf tags = bpf buf "}" ) +let opt_iter_ f = function + | None -> () + | Some x -> f x + module Counter = struct type t = counter let create (reg : registry) ?(tags = []) ?descr name : t = let self : t = { name; descr; tags; c = A.make 0 } in - Option.iter (validate_descr_ "counter") descr; + opt_iter_ (validate_descr_ "counter") descr; reg.counters <- self :: reg.counters; self let emit buf (self : t) = - Option.iter (bpf buf "# HELP %s %s\n" self.name) self.descr; + opt_iter_ (bpf buf "# HELP %s %s\n" self.name) self.descr; bpf buf "# TYPE %s counter\n" self.name; bpf buf "%s%a %d\n" self.name emit_tags_ self.tags (A.get self.c); () @@ -51,13 +55,13 @@ module Gauge = struct type t = gauge let create (reg : registry) ?(tags = []) ?descr name : t = - Option.iter (validate_descr_ "gauge") descr; + opt_iter_ (validate_descr_ "gauge") descr; let self : t = { name; descr; tags; g = A.make 0 } in reg.gauges <- self :: reg.gauges; self let emit buf (self : t) = - Option.iter (bpf buf "# HELP %s %s\n" self.name) self.descr; + opt_iter_ (bpf buf "# HELP %s %s\n" self.name) self.descr; bpf buf "# TYPE %s gauge\n" self.name; bpf buf "%s%a %d\n" self.name emit_tags_ self.tags (A.get self.g); ()