diff options
author | Clombrong <cromblong@egregore.fun> | 2025-07-03 00:22:26 +0200 |
---|---|---|
committer | Clombrong <cromblong@egregore.fun> | 2025-07-26 21:55:50 +0200 |
commit | 181f89ac70e91a7277b1616b2c4054b595b59b94 (patch) | |
tree | 53c00f9ae3d32314b27e4ed254422bf02fda4c2c | |
parent | ce38fa913c3b450f1177a2d8e431dbbb8e31af66 (diff) |
style(jid): move to_string function up
-rw-r--r-- | lib/jid.ml | 11 |
1 files changed, 5 insertions, 6 deletions
@@ -69,6 +69,11 @@ let of_string (jid : string) : t = resourcepart = map (fun i -> sub jid (i + 1) (length jid - i - 1)) domain_end; } +let to_string ({ localpart; domainpart; resourcepart } : t) = + let local = Option.fold ~none:"" ~some:(fun l -> l ^ "@") localpart + and resource = Option.fold ~none:"" ~some:(fun r -> "/" ^ r) resourcepart + in local ^ domainpart ^ resource + let show ({ localpart; domainpart; resourcepart } : t) = let show_opt = Option.fold ~none:"None" ~some:(Format.sprintf {|Some "%s"|}) in Printf.sprintf @@ -184,9 +189,3 @@ let%expect_test {|A domainpart followed by a resourcepart that contains an "at" { localpart = None; domainpart = "a.example.com"; resourcepart = Some "b@example.net" } |}] - - -let to_string ({ localpart; domainpart; resourcepart } : t) = - let local = Option.fold ~none:"" ~some:(fun l -> l ^ "@") localpart - and resource = Option.fold ~none:"" ~some:(fun r -> "/" ^ r) resourcepart - in local ^ domainpart ^ resource |